Профиль: Аноним (вход | регистрация) неRU opennet.me  
OpenNET

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



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

"Выпуск GNU Automake 1.19, инструментария для генерации сборочных файлов"  +/
Сообщение от opennews (ok), 11-Сен-26, 09:26 
Опубликован релиз Automake 1.19, утилиты для автоматической генерации make-файлов, соответствующих стандартам кодирования проекта GNU...

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

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

Оглавление

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

1. Сообщение от localhostadmin (ok), 11-Сен-26, 09:26   +2 +/
самая неудобная система сборки ever
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #2, #3, #4, #16, #21

2. Сообщение от Аноним (2), 11-Сен-26, 09:29   +1 +/
К сожалению альтернативы в виде cmake и meson не лучше.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1

3. Сообщение от Аноним (3), 11-Сен-26, 09:46   +5 +/
Как ты можешь это аргументировать? С точки зрения пользователя, он может переопределить параметры сборки или собрать для любой платформы без проблем, и ни одной альтернативы по удобству нет даже отдалённо на горизонте.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #5, #6, #8, #10, #11, #30, #41

4. Сообщение от Джон Титор (ok), 11-Сен-26, 10:08    Скрыто ботом-модератором–2 +/
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1

5. Сообщение от Аноним (5), 11-Сен-26, 10:09   +6 +/
Я думаю аргументация такая: "я не осилил".
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #7

6. Сообщение от Джон Титор (ok), 11-Сен-26, 10:11   +/
Я могу аргументировать: высокий порог вхождения, сложность отладки возникающих ошибок и устаревший синтаксис. Другими словами - лень вникать, когда есть то что уже работает. А популярнее всего до сих пор самый обычный make, порой cmake, порой cargo. И всё - множество пакетов не используют что-либо другое.
А теперь вы аргументируйте в пользу automake.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3

7. Сообщение от Аноним (7), 11-Сен-26, 10:24   +4 +/
Любую, самую неудобную, вещь можно осилить. Но зачем?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #5 Ответы: #17, #34

8. Сообщение от Аноним (8), 11-Сен-26, 10:42   +1 +/
> собрать для любой платформы без проблем, и ни одной альтернативы по удобству нет даже отдалённо на горизонте.

Намертво прибитая к юниксовому окружению зловонная куча shell/perl/m4 портянок соберет тебе "для любой платформы без проблем"? А для Винды соберет, лол? Да при помощи MSVC?

Да ты только в попытках настроить юниксовое окружение на Винде охренеешь от "удобства, которого нет и на горизонте", лол.

А CMake - один бинарь без внешних зависимостей. Как говорится, почувствуй разницу.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #9, #13, #15, #22, #44, #62, #69

9. Сообщение от Аноним (9), 11-Сен-26, 10:47   –2 +/
то что винда не умеет ничего кроме exeшника - это теперь достижение? вот уж действительно, лол
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #8 Ответы: #28

10. Сообщение от Аноним (10), 11-Сен-26, 10:58   +/
>Как ты можешь это аргументировать?

Так, что я и близко не читая мануалы к autotools, могу в программе без статики сделать статику или переопределить флаги или собрать autotools харнесс туда, где автотулзов нет и тупо собрать через мейк.

в случае симейка это всё уже затруднительное

в случае мезона - нужно брать и собирать на автотулзах питон

если ваша система сборки зависит от другой системы сборки, это не система сборки, а профанация, просто взять какой-нибудь m4 или даже gpp гораздо лучше, чем вот это

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

11. Сообщение от Ivan_83 (ok), 11-Сен-26, 11:28   +1 +/
Так смотря что собирать.
Если там один .с файл без зависимостей то проще шелл скрипт на одну строчку юзеру дать или инстркуцию вида: cc -O2 ....
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3

12. Сообщение от Ivan_83 (ok), 11-Сен-26, 11:28   +/
Теперь вроде muon есть заместо мезона, может лучше будет, я хз.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #10

13. Сообщение от Ivan_83 (ok), 11-Сен-26, 11:30   –1 +/
> А CMake - один бинарь без внешних зависимостей. Как говорится, почувствуй разницу.

У вас и электричество видимо из розетки берётся.

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

14. Сообщение от Аноним (8), 11-Сен-26, 11:34   +/
> Так, что я и близко не читая мануалы к autotools, могу в программе без статики сделать статику или переопределить флаги или собрать autotools харнесс туда, где автотулзов нет и тупо собрать через мейк.
> в случае симейка это всё уже затруднительное

В случае Симейка это как раз делается элементарно. А собирается потом даже на системе, где вообще нет make, а вместо него, например, Visual Studio / MSVC.

О каких затруднениях ты говоришь?

> если ваша система сборки зависит от другой системы сборки, это не система сборки, а профанация

Да нет, нормальная система сборки как раз ни от чего не зависит: один нативный бинарь, как в Cmake - и все. Или тот же meson, который зависит от одного лишь кроссплатформенного Питона.

А вот когда ваша "система сборки" - это лапшекод, намертво прибитый гвоздями к юниксовому окружению и зависящий от shell/m4/perl и кучи утилит из coreutils - то это не система сборки. Это Autotools.

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

15. Сообщение от Аноним (15), 11-Сен-26, 11:36   +/
>А для Винды соберет

А зачем ей пользоваться?
>Да при помощи MSVC?

Зачем пользоваться самым устаревшим компилятором С/С++?
>Да ты только в попытках настроить юниксовое окружение на Винде охренеешь от "удобства, которого нет и на горизонте"

Согласен, из плохой системы сложно сделать хорошую.

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

16. Сообщение от Аноним (16), 11-Сен-26, 11:48   –1 +/
Самая удобная система сборки.

autoreconf -vfi
./configure --prefix=/usr
make
sudo checkinstall

В отличие от meson ваших.

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

17. Сообщение от Аноним (17), 11-Сен-26, 11:53   +1 +/
Так ты не ответил на вопрос: "Почему автомэйк неудобен?". Ты же по сути набрасываешь на вентилятор.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7

19. Сообщение от Аноним (19), 11-Сен-26, 12:23   +/
>случае Симейка это как раз делается элементарно.

Никак это не делается. Если на целевой платформе нет cmake, то всё.

А автотулз генерит портативный позикс-скрипт.

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

20. Сообщение от Аноним (19), 11-Сен-26, 12:27   +/
Не нужен никакой автореконф.
Только один раз у разработчика.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #16 Ответы: #48

21. Сообщение от aname (ok), 11-Сен-26, 12:28   +/
GNU/ever
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #23, #32

22. Сообщение от Аноним (22), 11-Сен-26, 12:37   +/
> "для любой платформы без проблем"? А для Винды соберет, лол? Да при помощи MSVC?

Винда не входит ни в катекорию систем, ни в категорию платформ.

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

23. Сообщение от Аноним (23), 11-Сен-26, 12:48   +/
GNU forever
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #21

24. Сообщение от Lamerok (?), 11-Сен-26, 13:36   +/
достаточно почитать их mail list, чтобы понять это никому уже не интересно)
https://lists.gnu.org/archive/html/automake/
Ответить | Правка | Наверх | Cообщить модератору

25. Сообщение от Lamerok (?), 11-Сен-26, 13:37   +/
самая лучшая система это мезон на пайтоне)
Ответить | Правка | Наверх | Cообщить модератору

26. Сообщение от Метрика (?), 11-Сен-26, 14:12   –1 +/
Зачем это? Когда есть CMake
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #37

27. Сообщение от Аноним (8), 11-Сен-26, 17:38   +/
>>случае Симейка это как раз делается элементарно.
>Никак это не делается. Если на целевой платформе нет cmake, то всё.
> А автотулз генерит портативный позикс-скрипт.

CMake на целевой платформе - это один бинарь, не зависящий от окружения вообще. А твой "портативный позикс" - это все окружение, включая shell и утилиты, намертво прибитое к POSIX-системам.

Как ты думаешь, что легче получить/настроить?

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

28. Сообщение от Аноним (8), 11-Сен-26, 17:40   +1 +/
> то что винда не умеет ничего кроме exeшника - это теперь достижение? вот уж действительно, лол

Какой нелепый копиум. Наоборот: это твой копролитный Автотулз не умеет в Винду.

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

29. Сообщение от Аноним (8), 11-Сен-26, 17:48   +1 +/
>>А для Винды соберет
> А зачем ей пользоваться?

Ну, наверное затем, что 70% потенциальных пользователей ей пользуются, не?

>>Да при помощи MSVC?
> Зачем пользоваться самым устаревшим компилятором С/С++?

С С ты угадал, но на нем никто не пишет десктопные приложухи под Винду. А вот с С++ ситуация зачастую ровно обратная (да и то это если сравнивать с Clang; GCC на Винде даже std::filesystem в состоянии кишащего багами огрызка).

>>Да ты только в попытках настроить юниксовое окружение на Винде охренеешь от "удобства, которого нет и на горизонте"
> Согласен, из плохой системы сложно сделать хорошую

Согласен, Automake - плохая система.

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

30. Сообщение от Аноним (30), 11-Сен-26, 18:24   +/
> С точки зрения пользователя, он может переопределить параметры сборки

Вау, прямо как cmake/meson.

> собрать для любой платформы без проблем

Вау, снова прямо как cmake/meson! Которые, к слову, соберут действительно для любой платформы, а не только для POSIX совместимого юникс-лайка.

> ни одной альтернативы по удобству нет даже отдалённо на горизонте

А вот тут, друг, поподробнее: какими альтернативами ты пользовался и в чем их неудобства. "Даже на горизонте" - звучит, будто о каких-то уникальных киллер-фичах речь идет, не так ли?

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

31. Сообщение от Аноним (31), 11-Сен-26, 21:12    Скрыто ботом-модератором+/
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #13

32. Сообщение от Аноним (31), 11-Сен-26, 21:13   +/
Gnu/over
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #21

33. Сообщение от Ivan_83 (ok), 11-Сен-26, 22:28   +/
Вы свои cmake/meson в начале затащите на всякие разные платформы, а то кажется вы их сами ни разу и не пробовали собирать.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #30 Ответы: #36

34. Сообщение от _ (??), 11-Сен-26, 22:59   +/
> Любую, самую неудобную, вещь можно осилить. Но зачем?

Потому что часто "неудобная" - она же и единственно полезная\гибкая\etc ...
А неудобная это ... такое!(С)
Она "неудобная" пока не осилил?
А если осилил - она неудобная по сравнению с чем? И как кстати сравнивал?

Непросто всё в Датском королевстве! (С) Перефразируя ...

Не, оно пока собираешь только userland, только под одну OS, только под amd64v3 - вполне себе - да, такой вопрос может возникнуть ;)

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

36. Сообщение от Аноним (8), 11-Сен-26, 23:13   +1 +/
> Вы свои cmake/meson в начале затащите на всякие разные платформы

На какой конкретно платформе отсутствует Cmake?

> а то кажется вы их сами ни разу и не пробовали собирать.

Какие конкретно проблемы у тебя были со сборкой CMake? Особенно с учетом того, что для этого нужен только make и C++ компилятор.

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

37. Сообщение от _ (??), 11-Сен-26, 23:13   +1 +/
Ну во первых - это красиво!(С) :)

Да не парься ты, это - НЕ для тебя :)

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

38. Сообщение от Аноним (7), 11-Сен-26, 23:16   –1 +/
У меня вот есть паяльник (один из), и он зараза неудобный. Я им вполне осиливаю паять, но удобным он почему-то так и не стал.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #34

39. Сообщение от Ivan_83 (ok), 12-Сен-26, 00:01   –1 +/
> На какой конкретно платформе отсутствует Cmake?

Я только на amd64 сижу.
Полагаю что CMake есть далеко не везде где есть С компилятор :)


> Какие конкретно проблемы у тебя были со сборкой CMake? Особенно с учетом того, что для этого нужен только make и C++ компилятор.

Только в ваших фантазиях у него нет зависимостей.
https://github.com/freebsd/freebsd-ports/blob/main/devel/cma...
См LIB_DEPENDS и USES.
А вот у тех либ в зависимостях есть и питон с месоном.

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

40. Сообщение от Аноним (8), 12-Сен-26, 00:33   +1 +/
>> На какой конкретно платформе отсутствует Cmake?
> Полагаю что CMake есть далеко не везде где есть С компилятор :)

Ах, ты полагаешь...

>> Какие конкретно проблемы у тебя были со сборкой CMake? Особенно с учетом того, что для этого нужен только make и C++ компилятор.
> Только в ваших фантазиях у него нет зависимостей.
> https://github.com/freebsd/freebsd-ports/blob/main/devel/cma...

И что ты хотел сказать этой портянкой с Бзды? Естественно в твоем пакетном менеджере он настроен линковаться с системными либами. А при бутстрапе с нуля и дефолтными настройками все уже включено в его сорцы и - повторяю еще раз - требует для сборки только make и компилятор:

https://github.com/Kitware/CMake/tree/master#building-cmake-...

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

41. Сообщение от localhostadmin (ok), 12-Сен-26, 01:04   +/
я собирал много всякого и именно с автомейком у меня ничего не соибралось. вы конечно можете сказать, что "не осилил". но лично мне не очень хочется копаться в софте, тем более гнушном, чтобы раз в 100500 лет собрать какую-то прогу. проще просто альтернативу найти, всеравно в рабочих задачах это никто не использует
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #3 Ответы: #51

42. Сообщение от localhostadmin (ok), 12-Сен-26, 01:10   +/
> А если осилил - она неудобная по сравнению с чем? И как кстати сравнивал?

мы с вами находимся на научной конференции или в комментариях на опеннете?

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

44. Сообщение от _ (??), 12-Сен-26, 02:42   +/
> А для Винды соберет, лол? Да при помощи MSVC?

А всего то дет 20 тому тебе бы написали мол:
Вантузятники должны страдать!
УЁ на свой винфак, тут для людей!
Ну и фирменное: финдофсмвсдай!(С) строку копирайтов на 8кБ писать не буду :)

А впрочем - поф(*)!

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

45. Сообщение от _ (??), 12-Сен-26, 02:46   +/
Зря мой коммент на _это_ удалили :) Вот её-**** - зря! :)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #27

46. Сообщение от Аноним (46), 12-Сен-26, 05:37   +/
Заканчивался 2026 год, а эти люди продолжали проверять, не пропал ли у Си-компилятора stddef.h.
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #50

48. Сообщение от Zenitur (ok), 12-Сен-26, 06:48   +/
Если выкачал из GIT (и не из раздела Releases), то нужно.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #20

49. Сообщение от Советский Человек (-), 12-Сен-26, 08:03   +/
mk-configure в разы лучше и умнее
Ответить | Правка | Наверх | Cообщить модератору

50. Сообщение от Аноним (16), 12-Сен-26, 09:28   +/
В некоторых дистрибутивах нет даже компилятора. Я имею в виду, "из коробки".
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #46 Ответы: #55

51. Сообщение от Аноним (3), 12-Сен-26, 10:15   +/
Видимо, ты не догадался, что в том, что ты скачал, надо запустить autoreconf. Бывает. У меня вот сугубо негативный опыт с cmake и meson. Определённые компоненты прибиты гвоздями в скриптах повсюду на диске, про чтобы говорить про их самодостаточность это конечно надо хорошо так покривить душой -- никто не собирается запускать сборочную систему на микроконтроллере, и кроссдев тулчеейны уже полностью работоспособны. И с automake тот же atk из зависимостей удалялся максимально просто, это отличный пример гибкости.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #41

52. Сообщение от Ivan_83 (ok), 12-Сен-26, 14:10   +/
  # Allow the user to enable/disable all system utility library options by
  # defining CMAKE_USE_SYSTEM_LIBRARIES or CMAKE_USE_SYSTEM_LIBRARY_${util}.
  set(UTILITIES BZIP2 CPPDAP CURL EXPAT FORM JSONCPP LIBARCHIVE LIBLZMA LIBRHASH LIBUV NGHTTP2 ZLIB ZSTD)

Ну типа да, это есть статикой в https://github.com/Kitware/CMake/tree/master/Utilities
Но это не очень любят, особенно те кто на бизапаснасте повернут ибо либы в системе обновляются быстрее чем CMake выпускает очередную версию. Не говорю что это хорошо и на самом деле в 99,99% случаев пофиг что CMake собран со старыми супердырявыми либами, но меинтейнеров бегать убеждать не очень то и хочется.

И отдельно отмечу что время сборки Cmake даже с внешними либами уже напрягает даже на 5950х.

Те сейчас CMake это какой то мегакомбайн, супертяжёлый сам по себе.


Да, совсем забыл, отдельная песня что эти додики чего то там дропнули и теперь старые отлично работающие проекты надо поднимать только чтобы поменять там версию cmake с 3,5 на 4++ иначе оно не собирается.
Меня, как меинтейнера, как раз недавно побеспокоили этим.

В своих проектах я просто дропну cmake и буду собирать shell script~ом, чтобы два раза не вставать.

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

53. Сообщение от Аноним (53), 12-Сен-26, 15:26   +/
POSIX -- это международный стандарт, с точным описанием.
А CMake -- это коммерческий продукт частной компании Kitware.

Разорится Kitware, и всё, конец.

>намертво прибитое к POSIX-системам.

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

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

54. Сообщение от Аноним (8), 12-Сен-26, 15:46   +/
> А CMake -- это коммерческий продукт частной компании Kitware.

Это абсолютно такой же открытый и бесплатный продукт, как и все имплементации POSIX-совместимого софта от GNU.

> Разорится Kitware, и всё, конец.

О, да - и сорцы сразу у всех заберут, ага.

>>намертво прибитое к POSIX-системам.
> Так правильно, наша цель -- распространять POSIX системы, среди которых большинство свободных или частично свободных, а не повышать популярность систем

Так "ваши" цели - религиозные, и не имеют никакого отношения ни к процессу разработки софтины, ни к его конечной цели (дать софтину 70% людей, а не 4%).

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

55. Сообщение от Аноним (46), 12-Сен-26, 17:28   +/
Всё бывает. Но сколько ты видел дистрибутивов с компилятором, но без stddef?
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #50

56. Сообщение от Аноним (9), 12-Сен-26, 17:50   –2 +/
скорее это ты не умеешь ничего кроме винды, а мне и на линуксе хорошо, и автомаке никогда не создавал проблем
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #28 Ответы: #57, #59

57. Сообщение от Аноним (8), 12-Сен-26, 19:14   +/
> скорее это ты не умеешь ничего кроме винды,

Да нет, как раз с Симейком как раз умею и в Винду, и в Линукс, и в Мак.

> а мне и на линуксе хорошо

Да о тебе вообще речи не было, лол.

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

58. Сообщение от Аноним (58), 12-Сен-26, 19:24   +/
> В своих проектах я просто дропну cmake и буду собирать shell script~ом, чтобы два раза не вставать

Естественно, зачем нужен cmake, если ты пишешь хэллоуворды? Доростешь до сколь-нибудь больших проектов - узнаешь, что такое инкрементальная сборка и зачем диды изобрели make.

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

59. Сообщение от Аноним (9), 12-Сен-26, 19:49   –4 +/
делал пару прожектов с cmake, так себе, ничего прорывного, кстате ковыряние его макросов сильно такое себе..

виндой не пользуюсь, и маком, ибо ересь, считаю любителей мака убогими, а подстраиваться под инвалидов глупость, продолжать этот спор бесмысленно, если человек говн..ед, то тут только могила исправит, просто зафиксируй в голове что нормальному линуксоиду все эти микрософтояблочные "технологии" до лампочки, ретина дисплеи, скругленные уголки и копилот в блокноте, все ваши танцы с нтфс со времен 2008, лично я не считаю виндовс за ОС, это как была оболочка для дос так и осталось, 3 кодировки в системном ПО через 30 лет, ну да, а плох при этом автомэйк ага))), ладно, не подовись с очередной порцией

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

61. Сообщение от Ivan_83 (ok), 12-Сен-26, 22:24   –1 +/
А вы думаете на шеллскрипте невозможно сделать инкрементальной сборки?
На самом деле это не так уж и сложно.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #58 Ответы: #64, #66

62. Сообщение от Настрадалус (-), 12-Сен-26, 23:11   –1 +/
>Намертво прибитая к юниксовому окружению

*POSIXовому. и в этом нету ничего плохого

>А для Винды соберет, лол?

для винды иди кушай xml портянки csproj. это *опен*нет

>а при помощи MSVC?

этот мусор не нужен. для любителей садомазо с билли есть wsl и mingw

>Да ты только в попытках настроить юниксовое окружение на Винде охренеешь от "удобства, которого нет и на горизонте", лол.

это проблема винды, лол.

>А CMake - один бинарь без внешних зависимостей

а как же куча модулей без которых размер смейкфайла разжиревает раза в 4 а его еще и написать надо? врунишка

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

63. Сообщение от Аноним (8), 12-Сен-26, 23:35   +1 +/
> делал пару прожектов с cmake

Пришло время восхитительных историй.

> кстате ковыряние его макросов сильно такое себе..

Какие еще макросы ты в CMake ковырял? И зачем?

> виндой не пользуюсь, и маком, ибо ересь, считаю любителей мака убогими, а подстраиваться под инвалидов глупость, продолжать этот спор бесмысленно, если человек говн..ед,

Та не, друг, 96% нормальных людей как раз не едят помои даже с учетом их бесплатности. В отличие от...

> нормальному линуксоиду все эти микрософтояблочные "технологии" до лампочки

АХАХА! "Нормальный" и "линуксоид" в одной фразе. Господи, и на полном серьезе ведь пишет...

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

64. Сообщение от Аноним (64), 12-Сен-26, 23:38   +/
Думаю, ты об этом термине только сейчас узнал. А в гамаке стоя тоже не так уж сложно.

Рассказывай дальше, как CMake не нужен...

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

65. Сообщение от Аноним (8), 13-Сен-26, 01:25   +/
>>А для Винды соберет, лол?
> для винды иди кушай xml портянки csproj.

Так в том-то и дело, что мне не нужно кушать XML портянки csproj. И Make портянки тоже кушать не нужно. CMake сам с этим разбирается. В этом как бы и смысл.

>>а при помощи MSVC?
> этот мусор не нужен.

Адепты четырехпроцентной оси и Automake что-то там заикаются о ненужности, лол.

> для любителей садомазо с билли есть wsl и mingw

Нет, wsl и mingw - это как раз для любителей посношаться с юниксовым окружением.

>>Да ты только в попытках настроить юниксовое окружение на Винде охренеешь от "удобства, которого нет и на горизонте", лол.
> это проблема винды, лол.

Нет, это проблема сугубо прибитости Automake к юниксовому окружению. Ни одна другая современная КРОСС-ПЛАТФОРМЕННАЯ система сборки этим не страдает.

>>А CMake - один бинарь без внешних зависимостей
> а как же куча модулей без которых размер смейкфайла разжиревает раза в 4 а его еще и написать надо? врунишка

Ты не понимаешь, что значит ВНЕШНИЕ зависимости? Эта "куча модулей" у CMake - набор текстовых файликов, идущий вместе с программой.

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

66. Сообщение от Аноним (8), 13-Сен-26, 01:31   +/
> А вы думаете на шеллскрипте невозможно сделать инкрементальной сборки?

Я лично думаю, надо быть совсем не в своем уме, чтобы таким страдать.

> На самом деле это не так уж и сложно.

Ну-ну, велосипедостроитель, я посмотрю, как ты "не сложно" напишешь граф зависимостей на шелл-портянке. И, главное, с какой скоростью он будет обновляться при той самой инкрементальной сборке. Будешь ты потом сидеть с удивленными глазами "а почему это моя портянка в разы тормознее голого make?". Не говоря уж о ninja, лол.

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

67. Сообщение от Ivan_83 (ok), 13-Сен-26, 06:29   +/
Так все новаторы по вашему определению того.
Вы бы и авторам CMake тоже самое затирали когда они только начали писать.


> Ну-ну, велосипедостроитель, я посмотрю, как ты "не сложно" напишешь граф зависимостей на шелл-портянке.

1. Show a Nested Tree Layout
clang -H main.c

2. Generate a Flat List (Makefile Style)
clang -M main.c

3. Generate a Header Dependency File
clang -c main.c -MD

Что то из этого.
Дальше по списку составляется список mdate, из него ищется самое свежее и сверяется с имеющимся .o файлом, в случае чего и запускается перекомпеляция.

Или вы думали там какой то рокетсаенс нужен?)
А примитивный вариант где сравниваются время модификации .c и .o я сделал сразу, это вообще 3 строчки на шелл скрипт.

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

68. Сообщение от Аноним (8), 13-Сен-26, 07:37   +/
> Так все новаторы по вашему определению того.

Не новаторы, а велосипедостроители вроде тебя. Да, того.

> Вы бы и авторам CMake тоже самое затирали когда они только начали писать.

Но они никогда не начинали писать клон make на шелл-портянках.

>> Ну-ну, велосипедостроитель, я посмотрю, как ты "не сложно" напишешь граф зависимостей на шелл-портянке.
> 1. Show a Nested Tree Layout
> Generate a Header Dependency File
> clang -c main.c -MD
> Дальше по списку составляется список mdate, из него ищется самое свежее и сверяется с имеющимся .o файлом, в случае чего и запускается перекомпеляция.
> Или вы думали там какой то рокетсаенс нужен?)

Да только у тебя на каждый c/cpp файл будет по одному такому файлу со списком зависимостей. А потом тебе на шелл-портянке нужно строить и обходить граф зависимостей. Вот тогда ты и поймешь, что таки да, нужен рокет саенс, а не шелл-портянь.

> А примитивный вариант где сравниваются время модификации .c и .o я сделал сразу, это вообще 3 строчки на шелл скрипт.

Ага, и который не будет пересобираться после редактирования ни одного инклюда, от которого прямо или косвенно зависит .c. Ты явно только хэллоуворлды в жизни писал.

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

69. Сообщение от Аноним (69), 13-Сен-26, 10:49   +/
Если у тебя от монитора исходит зловоние, заведи привычку протирать монитор после посещения определённых файлов. А GNU Automake здесь ни при чём.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #8

70. Сообщение от Аноним (69), 13-Сен-26, 11:10   +/
> CMake на целевой платформе - это один бинарь, не зависящий от окружения вообще.

И как зависимости Automake тебе мешают? Что так, что эдак, ты набираешь в командной строке имя исполняемого файла. Воплощена ли вся необходимая функциональность в едином бинарнике или задействуется какой-то сторонний софт - как конечный пользователь ты можешь вообще об этом не задумываться.

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

71. Сообщение от Аноним (71), 13-Сен-26, 11:34   +/
> зачем диды изобрели make

Так cmake тоже вызывает make. И в его makefile есть далеко не только CC, а ещё куча всех тех же самых POSIX утилит.

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

75. Сообщение от Ivan_83 (ok), 13-Сен-26, 15:02   +/
Так авторы CMake написали ещё один автотулс - зачем когда есть автотулс!? - наверняка такие же дятлы как вы их донимали этим вопросом.
Зачем писали мезон когда есть автотулс и цмейк!?
Вам то не понять. :)


> Да только у тебя на каждый c/cpp файл будет по одному такому файлу со списком зависимостей. А потом тебе на шелл-портянке нужно строить и обходить граф зависимостей.

Зочем!?
Скрипт компеляции на входе получает имя .c файла, через переменные окружения получает куда ложить результат и всякие CFLAGS.

Дальше он смотрит есть ли .o файл - нет-тогда компеляем.
Если есть .o файл то какие у .c файла зависимости и какое самое свежее время изменения файла, вот его сравниваем с временем изменения .o файла и решаем надо компелять или нет.
Сам скрипт компеляции запускается через xargs - читай оно параллельно их много запускает, чтобы одновременно куча .c файлов компилилась.

Если смотреть на тайминги то сам компелятор сожрёт не мало на генерацию списка зависимостей. Но его можно запускать только когда .c файл поменялся.

То что там по списку пройтись и сравнить время - это и на шелл скрипте займёт совсем мало. Конечно больше чем в аналогичном коде написанном на С, но разница не такая большая на фоне потребления самого компилятора.


Но это если вообще заморачиватся.
Для небольших проектов инкрементальность не очень интересна, и есть ccache для резкого улучшения времени сборки.
А для дистрибуции-меинтейнеров на инкрементальность вообще пофик, там собирают один раз за релиз.

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

76. Сообщение от Ivan_83 (ok), 13-Сен-26, 15:03   +/
Не, там всё запущенее :)
Он может генерить разные фиговины и потом собирать будет на выбор make, ninja, вендовый вижалстудия и хз что ещё. Он и сам под себя умеет генерить, те они сами умеют быть типа make.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #71


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

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




XSQUARE
Inferno Solutions
Hosting by Hoster.ru
Хоcтинг:

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