Python делает системы

Что является преимуществами и проблемами с различным Python make- как системы?

обратите внимание, что Мы используем обозначения' (+)' и' (-)' соответственно в начале элементов списка для указания на преимущества и проблемы.

До сих пор я знаю

  • buildit
    • был ранее известен как pymake
    • (-) кажется, перестает использовать: последний выпуск был в конце 2007 года
  • zc.buildout
    • (+) в настоящее время активный с 20.07.2010
    • использование rc-file-like синтаксис с [sections]
    • (-) код Python не может с готовностью быть интегрирован в файлы конфигурации.
    • кажется, делает большой акцент на работу с .egg файлы.
  • сканирования
    • (+) в настоящее время активный с 20.07.2010
    • конфигурационные файлы записаны в чистом Python
    • (+) код Python может с готовностью быть интегрирован в файлы конфигурации
    • (-)? использование Python для файлов конфигурации может повлечь за собой дополнительное многословие
  • WAF
    • (+)? Mark говорит "Преимущества как scons но быстрее"
    • Какие-либо оборотные стороны? Почему люди все еще используют scons?

19
задан 5 revs, 2 users 86% 23 May 2017 в 12:09
поделиться

2 ответа

Одна из особенностей waf заключается в том, что он должен быть скопирован в дерево исходных текстов программы. Scons больше похож на make в том смысле, что он устанавливается в системе один раз, а затем у вас есть, по сути, просто файл данных (в форме программы на Python) в дереве исходных текстов.

Как следствие, Scons упакован в Ubuntu / Debian, а waf - нет.

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

Я успешно использовал Scons много раз; для своего следующего скомпилированного проекта я, вероятно, попробую хотя бы waf.

Вы можете прочитать об опыте Samba с waf . Они сообщают, что переход от autoconf к Waf приводит к правильной установке rpaths и сокращает двоичные файлы, связывая необходимые объектные файлы ровно один раз для каждой программы.

3
ответ дан 30 November 2019 в 05:23
поделиться

Когда я использовал waf около 1,5-2 лет назад, у него была очень скудная и плохая документация, что значительно ограничивало его полезность. Однако я не использовал waf некоторое время, так что, возможно, ситуация изменилась.

0
ответ дан 30 November 2019 в 05:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: