Как научиться использовать AutoTools/Libtool? (Кто -нибудь тоже это не любит?)
Вопрос
Когда в некотором проекте есть все это «ltmain», «aclocal.m4» и другие «autogen.sh». Это приносит дискомфорт:
./autogen.sh
медленный../configure
медленный../configure
не жалуется, не хватает. Я исправляю это, и это жалуется на что -то дальше. Медленный.- Makefiles большие. Настройка скрипта большой. Даже
configure.ac
обычно большой и непостижимый. - Makefile.am и configure.ac полон в основном таинственных переменных. Как это вычитает правила?
- я вдруг, внезапно Поймите, что я скопировал только заглушку с скриптом Libtool, и фактический бинарный
.deps
или же.libs
или что -то еще. - В общем, если что -то там сломано, я не уверен, что делать, а сообщения об ошибках обычно сбивают с толку.
- Наконец, даже небольшой проект составляет не менее 50 КБ в архиве, когда у него есть скрипт AutoTool настройки (когда исходный код может быть 5 КБ в архиве).
Каждая проблема с ним добавляет все больше и больше точек ненависти к инструменту {Auto, Lib}.
Как хорошо справиться с этим? Есть ли короткий учебник (не длинное «Введение в систему сборки GNU» или как это называется) плюс полная ссылка, как создавать, исправить и отлаживать эти вещи?
Решение
http://www.lrde.epita.fr/~adl/autotools.html это фантастический урок. Не позволяйте количеству страниц отталкивать вас: большая часть из них - это диаграммы, появляющиеся кусочки по частям.
Другие советы
Есть книга GNU AutoConf, Automake и Libtool Опубликовано новыми гонщиками. У меня есть копия, но не могу настоятельно рекомендовать ее, главным образом потому, что я не очень заинтересован в инструментах. Хотя это кажется довольно авторитетным - авторы - это люди Red Hat и поддерживающие GNU.
Обновлять: Кажется, что содержание книги доступно в режиме онлайн здесь.