The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]



"Релиз системы сборки CMake 3.22"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Релиз системы сборки CMake 3.22"  +/
Сообщение от opennews (??), 22-Ноя-21, 12:34 
Представлен релиз кроссплатформенного открытого генератора сценариев сборки CMake 3.22, выступающего в качестве альтернативы Autotools и используемого в таких проектах, как KDE, LLVM/Clang, MySQL, MariaDB, ReactOS и Blender. Код  CMake написан на языке C++  и распространяется под лицензией BSD...

Подробнее: https://www.opennet.ru/opennews/art.shtml?num=56205

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по ответам | RSS]

2. Сообщение от Аноним (2), 22-Ноя-21, 12:36   –2 +/
лучшая тулза для билда
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #25

3. Сообщение от Аноним (3), 22-Ноя-21, 12:36   –2 +/
это вам не мехон
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #26

5. Сообщение от Аноним (5), 22-Ноя-21, 12:44   +1 +/
Все хочу попробовать скрестить язык tcl и cmake и посмотреть, как изменится красивость скриптов моих, да все времени нет..
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #7

7. Сообщение от Аноним (7), 22-Ноя-21, 12:56   +2 +/
для красивости к cmake добавляют rust со вставками на perl, в которых внутри вставки на haskell
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #5 Ответы: #11

10. Сообщение от Аноним (10), 22-Ноя-21, 13:55   –2 +/
Это все фингня, завезли ли в него поддержку новой студии? Уже можно студию обновлять или еще ждать?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #15, #16

11. Сообщение от Аноним (11), 22-Ноя-21, 13:59   +3 +/
И всё это облепят Electron'ом.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7 Ответы: #27, #53

12. Сообщение от Анонимemail (12), 22-Ноя-21, 14:12   +/
Сколько перепробовал систем сборки и понял что только premake все делает правильно.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #23, #29, #40

13. Сообщение от макпыф (ok), 22-Ноя-21, 14:17   +/
> минимальным числом зависимостей

ЛПП

> нет привязки Perl или Python

Которые все равно есть в любом дистрибутиве (где собирают ПО из исходников, то есть не embeded)

Зато есть зависимости от libuv libjson-cpp libarchive curl librhash и nghttp2 (последний то зачем??? )

Наличие их копий в тарболе ни чего не меняет. Без учета того что есть везде их как минимум 6. У ninja/meson и scons - только python который везде, у autotools - perl (тож везде) и m4

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #14, #17

14. Сообщение от Аноним (14), 22-Ноя-21, 14:27   +/
> (последний то зачем??? )

как минимум просто потому что libcurl притащил

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #13

15. Сообщение от Guest (??), 22-Ноя-21, 14:40   –1 +/
Да уже завезли, было ещё в одном из предыдущих выпусков. Плюс сама студия идёт с CMake'ом с такой поддержкой.
В одном из Preview выпусков студии шла версия CMake без поддержки 2022 студии, но там основной сценарий сборка через Ninja так что генерация солюшена и проектов 2022 не критично, с точки зрения MS.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #10

16. Сообщение от keydon (ok), 22-Ноя-21, 14:48   +3 +/
Студия не нужна
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #10 Ответы: #28

17. Сообщение от пох. (?), 22-Ноя-21, 15:08   –1 +/
>> нет привязки Perl или Python
> Которые все равно есть в любом дистрибутиве

мир для которого предназначен cmake пока еще не исчерпывается вашими одинаковыми клонами systemd/linoops отличающимися только нескучными обоями.

К тому же возникают разночтения, к какой наираспоследней версии впихона вам удалось необратимо привязать ваш любимый сборочный ненужно-инструмент.

Зависимость от libuv (которая со всем миллиардом собственных зависимостей не собирается нормально без самого cmake) конечно не подарок, но по другому они уже все равно давно разучились.

Если что - autotools  не предназначены для запуска на целевой системе вообще. configure требует наличия только posix shell.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #13 Ответы: #18

18. Сообщение от макпыф (ok), 22-Ноя-21, 15:19   +/
>>> нет привязки Perl или Python
>> Которые все равно есть в любом дистрибутиве
> мир для которого предназначен cmake пока еще не исчерпывается вашими одинаковыми клонами
> systemd/linoops отличающимися только нескучными обоями.

в дистрибутивах bsd нет пихона? systemd тут каким боком?

> ваш любимый сборочный ненужно-инструмент.

Мой любимый сборочный инструмент (autotools) к пихону не привязан

> Зависимость от libuv (которая со всем миллиардом собственных зависимостей не собирается
> нормально без самого cmake)

Ну вообще то libuv только от libc зависит и использует autotools

> Если что - autotools  не предназначены для запуска на целевой системе
> вообще. configure требует наличия только posix shell.

Знаю. Я про то что "минимальное число зависимостей" у cmake не выходит ну никаким боком, не важно с чем сравнивать

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #17 Ответы: #19

19. Сообщение от пох. (?), 22-Ноя-21, 15:28   +/
в операционной системе freebsd нет не только пихона (какой из последних несовместимых версий?), но двадцать лет как нет уже и перла. Кстати, обратите внимание - сама она собирается без всего этого хлама. (и конфигурируется, угу)
Разумеется, кому очень надо, может все это пока поставить из портов (пока, потому что циклические зависимости скоро некому будет разруливать).

Да, про libuv это склероз подвел - с ней все в порядке, а вот jsoncpp требует мезон, самую наираспоследнюю версию впихона и девственниц в жертву.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #18 Ответы: #21, #54

20. Сообщение от Урри (ok), 22-Ноя-21, 15:31   +1 +/
Кошмарная система сборки. К сожалению у нее нету альтернатив - пользуюсь и плачу, плачу и пользуюсь.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #22, #51

21. Сообщение от макпыф (ok), 22-Ноя-21, 15:43   +/
> в операционной системе freebsd нет не только пихона (какой из последних несовместимых
> версий?), но двадцать лет как нет уже и перла. Кстати, обратите
> внимание - сама она собирается без всего этого хлама. (и конфигурируется,
> угу)

Ок, я bsd не пользовался, а т.к. python/perl просит половина пакетов из LFS (базовой системы) (про BLFS и остальное вообще не говорю) жизнь без них не представлял возможной

> Разумеется, кому очень надо, может все это пока поставить из портов (пока,
> потому что циклические зависимости скоро некому будет разруливать).

Да, с циклическими (и вообще с любыми) зависимостями становится все хуже... Но в принципе у питона большинство зависимостей опциональны, а perl их мало и врятли будет сильно расти. Но зависимости  зависимостей тоже могут "расти"

> какой из последних несовместимых версий?

Python2 EOL, но пока требуется некоторым софтом (android для сборки например хочет). Думаю что скоро умрет окончательно.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19 Ответы: #32

22. Сообщение от пох. (?), 22-Ноя-21, 16:09   +/
мы только что обнаружили что без meson ты ее зависимости зависимостей даже и не соберешь.

Ну так а зачем тебе еще одна такая же?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20 Ответы: #30, #33

23. Сообщение от Аноним (23), 22-Ноя-21, 16:13   +/
Когда в premake можно будет скомпилировать хедер и посмотреть какие дефайны были выставлены?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #12 Ответы: #44

24. Сообщение от Аноним (23), 22-Ноя-21, 16:13   +3 +/
Худшая система сборки.

Начиная от упоротого синтаксиса и отсутствия толковой документации, заканчивая просто нерабочими модулями.

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #31

25. Сообщение от Аноним (25), 22-Ноя-21, 16:19   +6 +/
не лучше так
лучшая() тулза() для() билда()
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2

26. Сообщение от Аноним (25), 22-Ноя-21, 16:23   +/
и не репка ...
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3

27. Сообщение от Аноним (25), 22-Ноя-21, 16:24   +1 +/
простите вы там не удр-ись?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11

28. Сообщение от Аноним (25), 22-Ноя-21, 16:26   –1 +/
Тоже ставите только Windows SDK ?
вопрос только в том как автоматом научить clang понимать где он что бы не прописывать какие-то непонятные номера в скриптах
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #16 Ответы: #47

29. Сообщение от Аноним (25), 22-Ноя-21, 16:27   +/
надо взглянуть, а то он еще и на сях и даже с нормальными ключевыми словами, а если еще и умеет библиотеки сам искать через pkg-config то вообще цены ему нет
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #12

30. Сообщение от Аноним (25), 22-Ноя-21, 16:29   +1 +/
нужно подождать когда они сдадутся и свой CMake будут собирать через meson
уже могли бы постепенно идти друг другу на встречу ключевые слова подбирать
синтаксис улучшать, но нет стоят на своем
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #22

31. Сообщение от Аноним (25), 22-Ноя-21, 16:31   +1 +/
подтверждаю. сталкивался в паре проектов.
нахлебался щей. в целом пока или классика Make/autotols или meson (хотя тут сложно) они там тоже какие-то обкуренные
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #24 Ответы: #34, #48

32. Сообщение от yet another anonymous (?), 22-Ноя-21, 16:50   +/
> Python2 EOL, но пока требуется некоторым софтом (android для сборки например хочет). Думаю что скоро умрет окончательно.

Вас бы google со своим android'ом послушал...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #21 Ответы: #43

33. Сообщение от Урри (ok), 22-Ноя-21, 16:52   +/
> Ну так а зачем тебе еще одна такая же?

Мне не нужна такая же. Мне нужна нормальная.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #22 Ответы: #35

34. Сообщение от Урри (ok), 22-Ноя-21, 16:58   +/
> нахлебался щей.

Пока остаешься под никсами мейк непревзойден и велоколепен. В связке с башем и авк - комбайн, и код сбилдить, и тесты прогнать, и почистить, и документацию нагенерить.

Но, к сожалению, приходится собирать и под студию. И если под офтопик, в принципе, можно mingw через мейк попользовать (и тесты через wine прогнать), то студией собрать никак.

Посему без симейка никуда. Печаль. Вот прямо сейчас страдаю, запуская через ремут десктоп "cmake --build . --target BUILD_ALL INSTALL". Блин, даже командная строка через _опу...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #31 Ответы: #36, #39

35. Сообщение от пох. (?), 22-Ноя-21, 17:00   –1 +/
Ну сам же признаешь что это что угодно но не cmake - так зачем же ж страдать?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #33 Ответы: #37, #61

36. Сообщение от пох. (?), 22-Ноя-21, 17:01   –1 +/
И что мешает и там использовать make? Или нужна именно сама студия, с интуитивно-понятными кнопочками "скачать с гитхапа или гитляпа и собрать"?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #34 Ответы: #38, #46

37. Сообщение от Урри (ok), 22-Ноя-21, 17:08   +/
Потому что у заказчиков большой проект именно на симейке, а малой кровью перевести эту кучу малопонятных портянок на что-то другое не получится. Ну а за большую кровь оне платить не согласны.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #35

38. Сообщение от Урри (ok), 22-Ноя-21, 17:10   –1 +/
Да, нужна именно студия. С ее идиотскими кнопочками "собрать", "запустить", "ждать полчаса пока дебаггер поймет что надо брекпоинт поставить".
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #36

39. Сообщение от Аноним (39), 22-Ноя-21, 17:39   –1 +/
> Пока остаешься под веществами мейк непревзойден и велоколепен.

исправил, не благодари

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #34

40. Сообщение от yet another anonymous (?), 22-Ноя-21, 17:45   +/
Так ведь там нет ничего, что выходит за пределы возможностей gnu make + friends.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #12

41. Сообщение от Аноним (-), 22-Ноя-21, 18:03   –1 +/
кто то пользуется этим отстоем?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #42

42. Сообщение от Аноним (42), 22-Ноя-21, 18:22   –2 +/
Никто, эта шляпа была до месона. Но объективно она способна выкачать исходники зависимости из сф и собрать их использовав автомейк и всё остальное -- это мой кейс 10 летней давности, что ещё просить? Кроссплатформенно, популярнее pkg-config. С тех пор я либо поставляю ворованную копию исходников (как это делают большинство проектов), либо заставляю пользователей самостоятельно разбираться с зависимостями. Это очень упрощают сопровождение.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #41

43. Сообщение от пох. (?), 22-Ноя-21, 18:30   +/
да ну, бросьте, не умрет андроид. фикция - это фикция. мертворожденное ненужно. Гугль рожает такие прожекты пачками, и так же пачками они мрут. А работающие продолжаются вечно.

так и будете собирать для него в уголке свой особый пихон2 десятилетней выдержки. фигли делать-то...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #32 Ответы: #45

44. Сообщение от Андрей (??), 22-Ноя-21, 21:13   +/
По идее никто не запрещает написать например make help, чтобы увидеть сгенерированные цели, а затем если вам хочется - вы можете натравить make на эту цель в режиме холостой печати иииии вывод грепнуть целом не смотря на всё сказанное все дефайны компилятору вполне поддаются обнаружению. Как альтернативу вы можете добавить возможностей в примейк-рецепт и настроить его выводить что душе угодно.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #23

45. Сообщение от yet another anonymous (?), 22-Ноя-21, 21:58   +/
ээээ.... возможно. Я, правда, на 1/2 android'ную сборку увёл под третий питон (до той степени, до которой мне нужно было). Но то --- я.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #43

46. Сообщение от yet another anonymous (?), 22-Ноя-21, 22:09   +/
пох, вы таки будете смеяться, но во времена, когда мне нужно было собирать и под W., я так и делал. С cygwin'ом получалось менее затратно, чем впрямую с nmake'ом. Студия --- неприемлемо (там под ней nmake и остался?). Оно упорно хотело только абсолютные пути и более одного варианта сборки на одной машине уживались с заметными усилиями.

Но давно это было. Судя по запросам/комментариям --- всё осталось так же.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #36 Ответы: #52

47. Сообщение от keydon (ok), 22-Ноя-21, 22:25   +1 +/
> Тоже ставите только Windows SDK ?
> вопрос только в том как автоматом научить clang понимать где он что
> бы не прописывать какие-то непонятные номера в скриптах

Нет, в моем мировозрении операционные системы windows и osx и софт для них отсутствует.
> вопрос только в том как автоматом научить clang понимать где он

То ли это вопрос "как прописать PATH", то ли "виндапроблемы".
Первое решается просто по первой же ссылке в гугле https://losst.ru/peremennaya-path-v-linux, второе решается не просто, а очень просто "виндузятники мазахисты, не нужно лишать их удовольствия от страданий"
На всякий случай отмечу что кривое поделие под названием WSL относится к "виндапроблемам". WSL это не линух, WSL это кусок !@#$%^.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #28 Ответы: #49

48. Сообщение от all_glory_to_the_hypnotoad (ok), 23-Ноя-21, 00:08   +/
make и autotools на несколько порядков хуже CMake. Последний по крайней мере умеет генерировать правила для ninja
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #31 Ответы: #50

49. Сообщение от Прохожий (??), 23-Ноя-21, 01:25   +1 +/
Кусок Убунты вы хотели сказать?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #47

50. Сообщение от Аноним (-), 23-Ноя-21, 02:21   +2 +/
> Последний по крайней мере умеет генерировать правила для ninja

Это которого потом может запустить meson ? Да , отличная штука.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #48

51. Сообщение от Ordu (ok), 23-Ноя-21, 10:50   +/
> Кошмарная система сборки.

А что с ней не так? Я ей пользовался только как пользователь, и в таком формате она вполне работает.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20

52. Сообщение от пох. (?), 23-Ноя-21, 11:08   –1 +/
&"C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\nmake"

Microsoft (R) Program Maintenance Utility Version 14.00.24245.0
Copyright (C) Microsoft Corporation.  All rights reserved.

NMAKE : fatal error U1064: MAKEFILE not found and no target specified
Stop.

Ничего не поменялось. Ну а для путей (которые вполне могут быть относительными ;-) как раз предназначены скрипты конфигурации.

Но, увы, студия любит cmake, отлично с ним интегрировалась и хочется убивать, убивать, убивать...

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #46

53. Сообщение от заминированный тапок (ok), 23-Ноя-21, 13:15   +/
>И всё это облепят Electron'ом.

через electron-jvm

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11

54. Сообщение от anonymous (??), 23-Ноя-21, 14:33   +/
Уважаемый, а ты что, чтобы поставить cmake, собираешь его из исходников с зависимостями? Открой для себя репозитории, там все есть и все скомпилировано до тебя. Чтобы использовать собирать cmake-проект, не нужно при этом сам cmake бутстрапить. Не страдай фигней.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #19 Ответы: #55

55. Сообщение от пох. (?), 23-Ноя-21, 14:58   +/
> Уважаемый, а ты что, чтобы поставить cmake, собираешь его из исходников с зависимостями?

да. Причем не со всем интернетом, сволочь такая, а только с той частью, которую совсем уж никак не оторвать.

> Открой для себя репозитории

спасибо, а зачем мне тогда cmake был бы нужен? То что им собирается, наверняка уже кем-то собрано и рядом выложено.

К счастью, мир пока еще не кончается на единственном вашем systemd/linoops, непременно последней версии (предпоследнее ведро несовместимо с данной версией Systemd)

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #54 Ответы: #56

56. Сообщение от anonymous (??), 23-Ноя-21, 15:18   –1 +/
Ну ты и отбитый. Удачи тебе с твоей нелинукспомойкой. Если что, приходи годика через два, когда уму-разуму наберешься и фанатизм подрастеряешь, научим тебя как на промышленных средах проекты собирать и не конпелять при этом половину сборочной системы.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #55

61. Сообщение от andy (??), 25-Ноя-21, 21:20   +/
> Ну сам же признаешь что это что угодно но не cmake -
> так зачем же ж страдать?

Пох, скажи пожалуйста, а какая система сборки хорошая (ну, или зная твое отношение к современной разработки ПО, наименее говенная)? Окромя самописных posix Makefile'ов, разумеется.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #35 Ответы: #62

62. Сообщение от пох. (?), 25-Ноя-21, 22:18   +/
А почему нет, кстати? Хотя bmake поинтереснее будет. Кстати, она вполне портируема, собирается autoconf, и, разумеется, ее писали в те древние прекрасные дни когда никому в голову не приходило намеренно удалять configure из релиза - поэтому для просто сборки на поддерживаемой платформе autotools тоже не требуются - достаточно posix shell.

А если тебе в портируемый софт - то замены autoconf мне неизвестны. Потому что его магия реально решает некоторые проблемы, которые в остальных случаях либо не требуют решения (бесконечные поиски того что во всех системах лежит в одном и том же месте, причем всегда) либо решаются только вручную.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #61


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру