Вопрос

Я очень частый пользователь GNU Автоинструменты (по большей части Автоконф., изредка Libtool).Я работаю над проектом, где мобильность будет камнем преткновения.Тем не менее, остальной команде просто неудобно работать с м4.я получил этот в моем почтовом ящике не от одного, а от четырех человек:

m4 is NOT lisp, dammit!

В любом случае, возможно, кто-нибудь может порекомендовать что-нибудь на основе Python или PHP?Я работаю над концом C гораздо большего дерева;Я могу быть уверен, что будет присутствовать либо Python, либо PHP 5, поскольку они являются обязательными условиями.

Это было полезно?

Решение

Я слышал хорошие вещи о CMake который пытается решить те же проблемы. Здесь это статья в википедии

Другие советы

Я рискую получить отрицательный голос, но должен признать, что, к сожалению, реальной замены автоинструментам нет.CMake, SCons, bjam — это хорошо, но когда дело касается серьезной работы…совершенно очевидно, что автоинструменты превосходят не потому, что CMake не может сделать то же самое, а потому, что с ним это сделать гораздо сложнее.

Например, CMake, самая популярная альтернатива autotools, имеет следующие недостатки:

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

И так далее.

Есть много других моментов.К сожалению, полноценной замены автоинструментам не существует.С другой стороны, если вы разрабатываете в Windows и для Visual Studio вы не сможете использовать автоинструменты и вам нужно будет выбрать CMake, который предоставляет такие инструменты.

Я добился хороших успехов с SCons.Он построен на Python, и сценарии сборки на самом деле сами являются сценариями Python, что дает большую выразительную мощь.С веб-сайта:

SCons — это инструмент разработки программного обеспечения с открытым исходным кодом, то есть инструмент сборки следующего поколения.Рассматривайте SCons как улучшенную кроссплатформенную замену классической версии. Make утилита со встроенным функционалом, аналогичным autoconf/automake и кеши компилятора, такие как ccache.Короче говоря, SCons — это более простой, надежный и быстрый способ создания программного обеспечения.

Существует множество различных альтернативных генераторов Makefile и систем сборки:

Также доступен, но не ориентирован строго на C/C++:

Но после перечисления всего этого у автоинструментов есть большое преимущество: они не требуют от конечного пользователя каких-либо других зависимостей.Сценарий настройки создается разработчиком только один раз и не требует ничего особенного со стороны пользователя, поскольку это сценарий оболочки.Перечисленные выше инструменты должны быть установлены до того, как кто-либо сможет собрать ваш исходный код, и они даже сами могут иметь зависимости.

Как насчет простого использования Делать и pkg-конфигурация?

Вот Шаблон Makefile чтобы вы начали.

Меньше значит больше людей.

Еще одна замена авто* - МК-конфигурация.Документы можно найти здесь

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

В Mozilla создается версия make для Python — Пимейк - который предположительно поддерживает кроссплатформенное использование.

Для создания программного обеспечения C/C++ из ANT или maven вас может заинтересовать терп.Он включает переносимую задачу компилятора C++, которая работает со многими компиляторами C++ на многих платформах.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top