У меня есть Makefile.am, который будет отвечать за создание окончательного применения бинарного:Как указать в скрипте Makefile.am, что я хочу только компилировать файлы .o., Которые могут быть позже связаны с?
проекта/SRC/Makefile.am
также в каталоге Src является подкаталог называется ctrnn, который содержит еще Makefile.am:
проекта/SRC/ctrnn/Makefile.am
Теперь ctrnn/Makefile.am должен только генерировать объект .o файлы с идея в том, что верхний уровень Makefile.am должен использовать объектные файлы, сгенерированные в подкаталоге ctrnn для создания двоичного файла.
Это ctrnn/Makefile.am
SOURCES = network.cpp\
neuron.cpp
AM_CPPFLAGS= @[email protected]
На основе этого файла Makefile.am, я хочу закончить с network.o и neuron.o. Я генерации по Makefile с использованием Automake и т.д., но когда я пытаюсь и затем выполнить файл грим, он не делает ничего, и просто говорит:
делают: Ничто не должно быть сделано для `всех»
I знаете, почему это так, мне нужно указать цель сборки. Но как это сделать в скрипте ctrnn/Makefile.am, учитывая, что я не хочу создавать двоичный файл, который потребует bin_PROGRAMS, но фактические объектные файлы network.o и neuron.o?
(Обратите внимание, что если я укажу имя bin_PROGRAMS, он по праву заканчивает жалобу на неопределенную ссылку на главную).
Что я делаю неправильно?
Thanks, Ben.
Спасибо! Я закончил с использованием метода libtool, отлично работает :-) –
Спасибо за руку помощи за то, что я стремлюсь к амуту autotools/libtool. И сделайте нам все одолжение: живите долго и процветайте! – rockdaboot
foo_LDADD? Это не должно быть foo_LIBADD –