|
2.48, X4asd (ok), 13:00, 14/12/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
пробовал на Астре Линукс Эльбрусе
в целом использовать вышло.. :-)
нюансы следущие:
python требуется современный (а не из репозитория говнолинуксов)
-> современный python собирается недоконца (проблемы с ffi) на Эльбрусе, но в достаточном количестве для использования Meson
| |
2.81, Michael Shigorin (ok), 18:10, 14/04/2019 [^] [^^] [^^^] [ответить]
| +1 +/– |
Засунули с 0.46.0: https://github.com/mesonbuild/meson/pull/3115
PS: но как же всё-таки эту кривулину ногами пишут...
TypeError: get_library_dirs() takes 2 positional arguments but 3 were given
(это функция и её вызов в одном и том же mesonbuild/compilers/c.py из одного и того же коммита, если что)
PPS re #48: в альте на эльбрусе сейчас питон 3.7.3, если что.
| |
|
3.84, mikhailnov (ok), 02:12, 08/05/2019 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Засунули с 0.46.0: https://github.com/mesonbuild/meson/pull/3115
> PS: но как же всё-таки эту кривулину ногами пишут...
> TypeError: get_library_dirs() takes 2 positional arguments but 3 were given
> (это функция и её вызов в одном и том же mesonbuild/compilers/c.py из
> одного и того же коммита, если что)
Спасибо. А с месоном бывает весело не только на e2k.
| |
|
|
|
2.49, X4asd (ok), 13:04, 14/12/2018 [^] [^^] [^^^] [ответить]
| +/– |
примеры чего?
1. примеры проектов? (которые были скомпилированы через кроскомпиляцию)
2. или примеры того как какой порядок действий делали пользователи чтобы скоспилировать кроскомпиляционно?
для случая {1} потенциально любой проект может оказаться ГОДНЫМ для кроскомпиляции. но есть вероятность присутствия ошибок в "meson.build" файле проекта, которые не позволят собрать через кроскомиляцмю.
для случая {2} -- примеры на страницах докментации
| |
|
1.5, nonimus (?), 13:54, 13/12/2018 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
Что-то мало комментов. А такая тема многообещающая.
Священную корову C/C++ или яву - да богомерзким питоном собирать?
Таб не там поставил - весь продакшн рухнет, это же, как-никак, не скобочки!
ну и дальше по теме.
| |
|
|
3.36, Аноним (36), 22:32, 13/12/2018 [^] [^^] [^^^] [ответить]
| +4 +/– |
ай-ай-ай... это как же так. Это же блокирующая причина не использовать meson.
| |
|
2.12, Аноним (-), 14:42, 13/12/2018 [^] [^^] [^^^] [ответить]
| +5 +/– |
> Священную корову C/C++ или яву - да богомерзким питоном собирать?
Это еще лайтово, один из погромистов гугля допер яву требовать для сборки _ОДНОГО_ си++ файлика.
| |
2.72, neit95 (ok), 10:01, 17/12/2018 [^] [^^] [^^^] [ответить]
| +/– |
Честно говоря, довольно старая фишка. Ныне питон у плюсов в комплекте не редкость. То разнопёстрые вспомогательные скрипты, то тесты (cxxtest, cxxmock), то сборщики (scons, waf). А вот на кой для java - не понятно. Там вроде с этим вообще своя атмосфера.
| |
|
|
|
|
4.22, Аноним (22), 17:32, 13/12/2018 [^] [^^] [^^^] [ответить]
| +2 +/– |
эта дрянь умеет генерить хромоподобный асинхронный мейк-файл ninja-build
| |
|
5.30, Аноним (30), 20:20, 13/12/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
Вобще-то, у CMake есть генераторы и для ninja и даже для проектов sublime text. И в отличии от Meson, CMake может в CUDA (да, да проприетарщина, пок-пок-пок) и кучу других интересных вещей
| |
|
6.51, X4asd (ok), 13:08, 14/12/2018 [^] [^^] [^^^] [ответить]
| +4 +/– |
> ... и даже для проектов sublime text. И в отличии от Meson, CMake может в CUDA (да, да проприетарщина, пок-пок-пок) и кучу других интересных вещей
а нормальные (экономные и при этом linux-style) агрументы командной строки -- CMake планирует научится?
или это является якобы совсем необязательным?
ато, понимаете, компилировать под проприетарную CUDA (на компьютере с проприетарным драйвером Nvidia) -- это что-то такое что наверняка не понадобиться НИ РАЗУ в жизни нормального человека.
а вот запускать компиляцию через использование различных аргументов командной строки -- это именно то что делается довольно часто в независимости от "кучу других интересных вещей" :-) ..
улавливаете в приоритеты?
ды и сам синтаксис проектов CMake тоже не вызывает радости
| |
|
7.57, пох (?), 15:35, 14/12/2018 [^] [^^] [^^^] [ответить]
| +2 +/– |
> а нормальные (экономные и при этом linux-style) агрументы командной строки -- CMake планирует
> научится?
уже. Это и есть linux-style.
От неосиляторов шеллов и мэйкфайлов, ага.
> ды и сам синтаксис проектов CMake тоже не вызывает радости
чо такое? Они пробелонезависимые (в отличие, кстати, от clean make), разбираться и понимать не надо - stackoverflow, ctrl-c, ctrl-v.
| |
|
8.74, neit95 (ok), 10:06, 17/12/2018 [^] [^^] [^^^] [ответить] | +/– | Для сборки hello world ов м б и не надо А в остальном синтаксис cmake не на мн... текст свёрнут, показать | |
|
|
|
5.32, Аноним (-), 22:06, 13/12/2018 [^] [^^] [^^^] [ответить]
| +2 +/– |
> эта дрянь умеет генерить хромоподобный асинхронный мейк-файл ninja-build
А это надо еще какую-то отдельную нинзя-дрянь ставить. Особенно угарно для прожектов на 5 файлов. Они так круто несколько микросекунд сэкономили, путем требования понаставить какой-то гадости, что я им тоже желаю гуглопрогера, который яву потребовал вкатить и прочие грэдлы для того чтобы 1 си++ файл скомпилить.
А нормальные люди смотрели на это дело, крутили пальцем у виска и жали gcc -O3 file.cpp -o program :D
| |
|
|
7.85, Michael Shigorin (ok), 13:57, 08/05/2019 [^] [^^] [^^^] [ответить]
| +/– |
>> А это надо еще какую-то отдельную нинзя-дрянь ставить
> Можно wget-нуть официально собранный бинарник
А где взять для e2k или вон для riscv64 через стенку? :)
| |
|
8.86, llolik (ok), 14:39, 08/05/2019 [^] [^^] [^^^] [ответить] | +/– | Ну, это к тому, что если он не хочет ставить, то вся ninja - это один 200Кб бин... текст свёрнут, показать | |
|
|
6.52, X4asd (ok), 13:19, 14/12/2018 [^] [^^] [^^^] [ответить] | +/– | для только лишь одного файла file cpp, без зависимостей -- нет смысла использо... большой текст свёрнут, показать | |
|
|
4.73, neit95 (ok), 10:03, 17/12/2018 [^] [^^] [^^^] [ответить]
| +/– |
> умеет генерить make-файлы.
Не известно, для каких великих целей.
| |
|
|
4.16, Аноним (16), 14:47, 13/12/2018 [^] [^^] [^^^] [ответить]
| +7 +/– |
> cmake был раньше
А Makefile был еще раньше. Следовательно, cmake не нужен. А до Makefile жили в пещерах и все было неплохо. Так что и Makefile не нужен.
| |
|
|
2.23, Аноним (23), 19:30, 13/12/2018 [^] [^^] [^^^] [ответить]
| –1 +/– |
Эволюция детка это когда раньше было огнива, а теперь зажигалка,
так и тут раньше был cmake, но натр@хавшись с ним придумали meson
| |
|
3.33, Аноним (33), 22:09, 13/12/2018 [^] [^^] [^^^] [ответить]
| +2 +/– |
И какие у него плюсы, собственно? Что он поддерживает полторы платформы, нифига не детектит, и вообще обкоцаный и единственным достоинством какие-то левые блабла про скорость?
Так обрастет поддержкой разного добра и фичами - скорость просядет, траха прибавится и после этого найдите 10 отличий. Cmake просто уже на более поздней фазе эволюции - умеет генерить файлы для кучи билдсистем, детектит кучу всего, даже уже не сильно глюкая в этом процессе как раньше. Так что даже в нечто относительно юзабельное превратился, по сравнению с старыми версиями.
| |
|
4.53, X4asd (ok), 13:22, 14/12/2018 [^] [^^] [^^^] [ответить]
| –2 +/– |
> умеет генерить файлы для кучи билдсистем
а зачем это было делать? :-)
| |
|
5.58, пох (?), 15:37, 14/12/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
действительно, нужно wget'нуть официально собранный бинарник под единственно-верный линукс, и ничего вообще не собирать, тем более что и все равно не соберется ни под чем кроме единственно-верного линукса.
ваш новый стандарт, манки-кодеры.
| |
|
6.59, llolik (ok), 15:52, 14/12/2018 [^] [^^] [^^^] [ответить]
| +/– |
> действительно, нужно wget'нуть официально собранный бинарник под единственно-верный линукс
Ну вообще-то, если внимательно посмотреть, там (https://github.com/ninja-build/ninja/releases) бинарники под linux/window/mac + тарболл.
Как минимум, на Xenial/CentOS6 (штатный gcc) и на Win7 (MSVS2015), в общем на чём я собираю и могу проверить, оно нормально работает. На Mac не пробовал (нет надобности, макбука нет, с виртуалкой извращаться лень).
| |
|
7.61, пох (?), 17:09, 14/12/2018 [^] [^^] [^^^] [ответить]
| +/– |
похоже, они даже не догадываются, что линукс бывает не только на amd64...
в принципе, незачем и париться - код, использующий это чудо вместо автоконфа, все равно там тоже не соберется, а собравшись по недоразумению - не заработает.
| |
|
8.63, X4asd (ok), 17:43, 14/12/2018 [^] [^^] [^^^] [ответить] | +/– | ну и на какой линукс тебе не хватило бинарника ninja в том числе учитывая соб... текст свёрнут, показать | |
|
9.65, пох (?), 19:16, 14/12/2018 [^] [^^] [^^^] [ответить] | +/– | LSB_VERSION core-2 0-noarch core-3 2-noarch core-4 0-noarch core-2 0-ia32 core-... текст свёрнут, показать | |
|
|
11.76, пох (?), 15:26, 17/12/2018 [^] [^^] [^^^] [ответить] | +/– | и чо Повторяю - там где он не ended я прекомпиленный бинарник не сборочной ... текст свёрнут, показать | |
|
12.78, X4asd (ok), 17:34, 18/12/2018 [^] [^^] [^^^] [ответить] | +/– | это значит что врядли вообще можно надёжно ожидать что программа зауститься на т... текст свёрнут, показать | |
|
13.79, пох (?), 16:57, 19/12/2018 [^] [^^] [^^^] [ответить] | +/– | программа, авторы которой ниасилили нормальные инструменты - не запустится, увер... текст свёрнут, показать | |
|
|
|
|
|
|
|
|
|
|
|
|
1.13, Аноним (16), 14:45, 13/12/2018 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
С одной стороны
> Код Meson написан на языке Python
С другой стороны
> поставляется под лицензией Apache 2.0
> таких проектов, как systemd, GStreamer, GNOME и GTK+
Не могу определиться, мезон это хорошо или нет.
| |
|
2.24, Аноним (23), 19:32, 13/12/2018 [^] [^^] [^^^] [ответить]
| +/– |
Это позволяет за считанные секунды описать процесс сборки в простой си подобной форме,
что конечно удобно, но вот Python как бы показывает, что проект не созрел.
С другой стороны Git тоже сначала не был на Си написан.
Ничего дорастет до взрослого состояния перепишут на Си.
| |
|
3.37, DerRoteBaron (ok), 22:33, 13/12/2018 [^] [^^] [^^^] [ответить]
| +/– |
С одной стороны переписать на Си его можно (как и почти всё вообще), но так ли это нужно, если оно хорошо работает на питоне?
На встройках и железе двадцатилетней давности им вряд ли кто-нибудь будет собирать, а затянуть сборочной зависимостью питон и использовать на чем-нибудь помощнее себе нормально.
Разве что с кросс-компиляцией в чем-нибудь типа pdebuild могут быть проблемы, но там дебиановцы ССЗБ и не смогли в архитектуру зависимости "any" и тянут на host python:target, который пытается собой исполнить скрипт в postinstall и там и умирает.
| |
3.68, dhamp (?), 03:02, 16/12/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
>Это позволяет за считанные секунды описать процесс сборки в простой си подобной форме
в каком месте синтаксис meson с-подобный?
| |
|
|
1.15, Аноним (15), 14:47, 13/12/2018 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
>> В циклы foreach добавлена поддержка ключевых слов break и continue;
%%%ть! Затащить целой питон, чтобы писать правила на каком-то недоязыке.
Опять лисп изобретают.
| |
|
2.20, llolik (ok), 15:36, 13/12/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Опять лисп изобретают
Наоборот Python упрощают под нужды сборки.
> Затащить целой питон
Который и так везде (ну практически) есть.
| |
|
3.25, Аноним (23), 19:34, 13/12/2018 [^] [^^] [^^^] [ответить]
| +/– |
Там от питона используют только парсилку грамматики,
так что думаю, что со временем перепишут на анси си
| |
|
2.39, Аноним (39), 00:30, 14/12/2018 [^] [^^] [^^^] [ответить]
| +2 +/– |
А какие альтернативы?
Факт раз - тащить целый что-то придётся, современная система сборки это весьма нетривиальный продукт. CMake, autocrap, SCons, meson - всё большое само по себе, и/или тащит что-то большое зависимостями.
Факт два - язык таки нужен, и именно недоязык. Во-первых, чтобы на нём удобнее было описывать сборочную специфику, которая как минимум декларативна. Во-вторых, чтобы не дать возможность писать полноценные программы. SCons, который позволял питоновский код, показал к чему это приводит - сборка любого хелловорлда превращалась в портянку текста, который, даже не смотря на то что он был питоном, выглядел как перл.
| |
|
3.80, пох (?), 17:08, 19/12/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Факт раз - тащить целый что-то придётся, современная система сборки это весьма
> нетривиальный продукт. CMake, autocrap, SCons, meson - всё большое само по
> себе, и/или тащит что-то большое зависимостями.
autocrap и сам по себе небольшой, и тащит только m4, который вообще крохотный.
и, самое главное - он нужен только и исключительно разработчику, желающему что-то поменять не в коде, а в механизме его сборки. Всем остальным (включая тех кто правит код) он не требуется - необходимо и достаточно запустить configure. Но это немодно, немолодежно, и мы его уже добавили в .gitignore, чтоб жизнь медом не казалась.
| |
|
|
1.17, Ivan_83 (ok), 14:50, 13/12/2018 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Непонятно только зачем это тащют для сборки си и крестовых проектов, собирали бы свои питоны этим.
Ещё какой то waf есть, тоже питоноподелие для сборки, mpv к сожалению этим собирается.
| |
|
2.26, Аноним (23), 19:35, 13/12/2018 [^] [^^] [^^^] [ответить]
| +/– |
На сколько наблюдаю waf и scons не прижились, а вот meson вроде бы поддержало сообщество
так что есть вероятность что на определенном этапе его популярности его перепишут на си
| |
2.56, Crazy Alex (ok), 14:33, 14/12/2018 [^] [^^] [^^^] [ответить]
| +/– |
Последние оода три не видел девелоперских систем без питона, даже виндовых. Всё равно что-то его притаскивает
| |
|
|
2.21, Аноним84701 (ok), 17:03, 13/12/2018 [^] [^^] [^^^] [ответить]
| +1 +/– |
> [CODE]
> man make
> [/CODE]
make то он (g/b/n/p)make, но тот же бсдшный make и gnu make -- могут быть два довольно разных мейка.
Хотя, можно смотреть в сторону мейкфайлов suckless.org проектов -- там обычно только Incs/Libs пути править нужно, чтобы оно собиралось на не-пингвине.
| |
2.27, Аноним (23), 19:37, 13/12/2018 [^] [^^] [^^^] [ответить]
| +/– |
К сожалению, make это построитель дерева зависимостей для роаспараллеливания "выполнения" заданий.
meson это немного другого уровня инструмент, он понимает и знает какие инстурменты есть и умеет формировать в зависимости от платформы команду и ключи, а так же исследовать окружение
Хотя цель у инструментов одинаковая, но meson ближе к синструментам вроде ant и maven нежели к make
| |
|
3.62, nobody (??), 17:23, 14/12/2018 [^] [^^] [^^^] [ответить]
| +2 +/– |
ant - чистой воды make на яве и для явы со своим синтаксисом. Независимость от shell - единственное его коренное отличие от make
| |
|
|
3.41, трололо (?), 02:54, 14/12/2018 [^] [^^] [^^^] [ответить]
| +/– |
совсем распоясались. vim, gcc и вам хватит. чет народ ваще оборзел)))) ахахах скоро кодить надо будет через решение спец задач по поиску нужной кнопки в сборщике сборщика, который собирает сборщика. :)
| |
|
|
1.29, Аноним (23), 20:13, 13/12/2018 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Кто-нибуь разбирался со сборкой wxWidgets под Windows в meson.
Прочитал закрытые задачи на GitHUB по meson, но так и не понял
существует ли путь собрать проект с wxWidgets под Visual Studio.
Пакет wxWidgets скачан лежит в какой-то директории.
Что-то там непонтяное вроде и пакетный менеджер vcpck советуют,
но так и не понятно уже есть поддержка или нет.
Смотрел в сторону сборки clang под win32, но тоже не нашел упомнианий.
Вообще как-то глухо. Работы идут в этом направлении?
Неужеле все перебрались под .NET?
| |
|
2.35, Аноним (33), 22:12, 13/12/2018 [^] [^^] [^^^] [ответить]
| +2 +/– |
Фантомас в очках на аэроплане: собрать wxWidgets в винде шлангом и прикрутить это к дотнету, во.
| |
2.38, Аноним (38), 00:07, 14/12/2018 [^] [^^] [^^^] [ответить]
| +/– |
> Смотрел в сторону сборки clang под win32, но тоже не нашел упомнианий.
Разработчики Clang-а не выпендриваются и используют CMake. Зависимостей от сторонних библиотек нет, собирается элементарно. Упоминаний чего не нашлось?
| |
|
3.54, X4asd (ok), 13:38, 14/12/2018 [^] [^^] [^^^] [ответить]
| +/– |
>> Смотрел в сторону сборки clang под win32, но тоже не нашел упомнианий.
> Разработчики Clang-а не выпендриваются и используют CMake. Зависимостей от сторонних библиотек
> нет, собирается элементарно. Упоминаний чего не нашлось?
Meson ещё не было когда появился clang
| |
|
4.64, Аноним (64), 19:08, 14/12/2018 [^] [^^] [^^^] [ответить]
| +/– |
Верно, но в списках рассылки ("llvm-dev" и "cfe-dev") за весь этот год не нашлось ничего даже отдалённо напоминающего переход с CMake на сабж.
Вопрос "Упоминаний чего не нашлось?" также остаётся открытым.
| |
|
3.66, пох (?), 19:20, 14/12/2018 [^] [^^] [^^^] [ответить]
| +2 +/– |
> Разработчики Clang-а не выпендриваются и используют CMake. Зависимостей от сторонних
> библиотек нет, собирается элементарно. Упоминаний чего не нашлось?
эммм...
LIB_DEPENDS= libcurl.so:ftp/curl \
libexpat.so:textproc/expat2 \
libjsoncpp.so:devel/jsoncpp \
libuv.so:devel/libuv \
librhash.so:security/rhash
(весь вот этот мусор, кроме разьве что expat, архи ведь важен для банальной генерилки мэйкфайлов, ага). Про кольцевые зависимости в нем, когда что-то от чего зависит, вроде, libuv, требует для своей сборки cmake, я уже когда-то писал.
| |
|
4.70, Xasd (ok), 16:12, 16/12/2018 [^] [^^] [^^^] [ответить]
| –1 +/– |
а на кой вообще хрен нужена библиотека асинхронного ввода-вывода для системы сборки?
в первых: можно было воспользоваться средствами которые предлагает ядро: epoll() (и select() для инвалидных операционных систем).
во вторых: CMake же вообще ничего даже НЕ собирает -- он только делает файл для ninja. ЗАЧЕМ ТУТ АСИНХРОННОСТЬ?!?!
ды и json разве там есть?
| |
|
5.71, dhamp (?), 23:35, 16/12/2018 [^] [^^] [^^^] [ответить]
| –1 +/– |
исходники cmake доступны, изучать никто не запрещал.
изучи для чего нужна та или иная зависимость, да поделись с общественностью своими открытиями.
| |
5.77, пох (?), 15:31, 17/12/2018 [^] [^^] [^^^] [ответить]
| +/– |
> а на кой вообще хрен нужена библиотека асинхронного ввода-вывода для системы сборки?
не знаю и знать не хочу. Я и так плохо сплю.
> в первых: можно было воспользоваться средствами которые предлагает ядро: epoll() (и select()
> для инвалидных операционных систем).
вот они и воспользовались, как умели - притащив зависимость от библиотеки, не разбираться же ж самим.
> ды и json разве там есть?
как видишь.
то есть, вероятно, без него как-то соберется, но не факт что после этого соберет то, чего ради ты собирал себе cmake.
это, заметим, базовые зависимости - там еще есть такие, которые включаются отдельно по запросу.
И отдельно еще модули.
autoconf, говоришь, плохой? (напоминаю, что по задумке, ни он сам, ни m4 вообще не должны присутствовать на машине, используемой для сборки или отладки проекта)
| |
|
|
|
2.75, neit95 (ok), 10:22, 17/12/2018 [^] [^^] [^^^] [ответить]
| +/– |
Глянь msys2. Clang там был. М.б. и wxWidgets есть, но это не точно.
| |
|
|