Во-первых, Automake является инструментом для автоматической макияж делает Makefiles; сделать сам по себе совершенно другой зверь (и я уверен, что то, что вы искали, было решением).
Вот простой GNU на основе Makefile, чтобы выполнить то, что вы хотите:
all: Thread.o
Это заполняет что-то (по умолчанию), как в следующем (пожалуйста, изменить 4-пространство пробельного на жесткие закладки):
all: Thread.o
Thread.o: Thread.cc
$(COMPILE.cpp) $(OUTPUT_OPTION) $<
Макросы COMPILE.cpp и OUTPUT_OPTION, разумеется, расширяются по умолчанию до GNU, делают указанные значения и не переносятся; $ < is AT & T Сделайте стандартный синтаксис, хотя в соответствии с man-страницей pmake (1).
GNU make имеет концепцию неявных vs явных правил, шаблонов, суффиксов и т. Д., Которые вы могли бы использовать, но это не переносимо для всех версий make, и, следовательно, поэтому весь Makefile явно изложен в терминах целей и переменных, поскольку POSIX не описывает многие из желаемых сценариев того, как следует писать Makefile.
Run gmake -p для получения более подробной информации и посмотреть на руководстве для TeXinfo-gmake в теме неявных, явные правила, шаблоны, суффиксы и т.д.
Это было простым решением проблемы. Спасибо за совет. – 2009-09-18 15:39:02