LINUX.ORG.RU

Век живи, век учись.. собирать программы..


0

0

Здравствуйте!
При сборке программ из исходников скачанных из репозитория часто оказывается далеко недостаточным часто упоминаемой процедуры
./configure && make && make install

Если нет скрипта ./configure, то хорошо, если есть скрипт ./autogen.sh, тогда добавляется лишь одно звено:
./autogen.sh && ./configure && make && make install

А вот если и ./autogen.sh отсутствует.. То надо ещё знать о существовании
aclocal, autoconf, automake..
Вот, ещё только что о libtoolize узнал.

Скажите, где-нибудь описано в каком порядке и с какими ключами надо запускать эти утилиты в САМОМ ОБЩЕМ случае?..
А то регулярно приходится сталкиваться, но не так часто -- всё время забывается.. Приходится пробовать всё подряд:
$ aclocal
$ automake
$ automake --help
$ automake -a
$ autoconf
.. Как-то так ..

★★★★★

Ответ на: комментарий от sdio

Да нет.. Довольно часто в INSTALL/README нет ни слова о сборке из исходников из репозитория.. Только о сборке из пакетов .tar.bz2/.tar.gz
Эти инструкции могут так и начинаться:
1) распакуйте архив <program>-src-<version>.tar.gz

unDEFER ★★★★★
() автор топика
Ответ на: комментарий от SI

Ну scons это вообще уже другая песня..

unDEFER ★★★★★
() автор топика

Хм, я два раза собирал LFS вручную, и всего несколько раз мне пришлось запустить autoconf. Было довольно много пакетов, у которых не было ./configure, но там были уже готовые Makefile'ы, и я или передавал нужные параметры команде make, или правил их руками. В особо тяжёлых случаях помогало вдумчивое чтение файлов README и INSTALL.

Ну а по вопросу: на английской википедии есть неплохая статья об autotools, в том числе и с ссылками на процесс сборки (см., например, "An Autotools Tutorial for beginners" в конце)

Jini ★★
()
Ответ на: комментарий от unDEFER

Ух, только сейчас заметил, что вопрос о сборке исходников из репозитария. Не знал, что это разные вещи...

Jini ★★
()

В самых сложных случаях делаю autoreconf -v -i

Zmacs
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.