2009-10-28 4 views
2

Я наткнулся на make-файл «Makefile.am», и я попытался использовать «make -f Makefile.am» на нем безрезультатно. Что я делаю не так?Makefile.am ... что это?

ответ

7

Это скрипт automake/makefile. Вы можете узнать все о automake, autoconf, libtool и т. Д. Под названием autobook.

В основном, шаги состоят в том, чтобы запускать automake, затем autoconf, а затем настраивать, а затем делать для создания программного обеспечения, которое у вас есть. Эти шаги необходимы для создания скрипта configure, который автоматически ищет нужные библиотеки и т. Д. В вашей системе.

Процесс не прост, если ваше программное обеспечение также не содержит уже сгенерированный «настраиваемый» файл. Если это так, единственное, что вам нужно сделать (в основном) - просто запустить ./configure, затем make, затем make install, чтобы установить программное обеспечение в местоположение по умолчанию. Если вы хотите изменить параметры конфигурации, вы также можете посмотреть ./configure --help.

+0

спасибо ... очень полезно! – 2009-10-28 14:50:32

0

см. «Man automake» или google для autotools. вероятно, вы захотите запустить что-то вроде autogen.sh в первую очередь.

2

Вы наткнулись на файл automake, который используется для создания Makefile из источника, в данном случае Makefile.am.

От http://developer.gnome.org/doc/GGAD/z70.html, они объясняют это так:

Automake обрабатывает Makefile.am для получения соответствующей стандартам Makefile.in. automake делает для вас много работы: например, он поддерживает зависимости между исходными файлами. Он создает все стандартные цели, такие как установка и очистка. Он также создает более сложные цели: просто набрав make dist, вы создадите стандартный файл .tar.gz, если ваш Makefile.am верен.

В принципе, вы должны запустить «automake», чтобы сделать Makefile, и вы, вероятно, столкнетесь с той же ситуацией с скриптом configure с помощью «autoconf».

Automake: http://www.gnu.org/software/automake/ Статья Википедии на Automake: http://en.wikipedia.org/wiki/Automake

2

Если вы пытаетесь скомпилировать приложение 3-й партии из источника, обычно есть «настроить» сценарий, расположенный в верхней части исходного дерева. Если вы запустите ./configure --help из этого местоположения, вы получите список параметров, которые вы можете установить. Обычно --prefix является наиболее распространенным в использовании.

После запуска скрипта вы получите стандартный Makefile, созданный из файлов automake. Оттуда вы можете просто выполнить команду make.

Стандартные этапы сборки для Linux пакетов являются:

./configure 
make 
make install 
+0

другие предположили, что это файл «automake», а не файл «make» ... – 2009-10-28 14:52:08

+0

, который является истинным ... Makefile.am является файлом automake, но запуск сценария 'configure' приведет к созданию стандартных файлов make из те. – jheddings

Смежные вопросы