Я пытаюсь сделать Makefile.am, который находит всю зависимость (c и cpp-файлы) во время выполнения (make).Autodetect source for automake
Я проверить эту команду:
example_SOURCES=$(shell find . -type f | grep -E '\.c|\.cpp' | awk '{L[NR]=$$0} END {{for (i = 1; i <=NR-1;i++) print L[i]"\\"}; {print L[NR]}}')
Команда работает отлично (я управлять с оным из перенаправления в файл и источники отлично).
Но Makefile, не использует никаких источников:
gcc -g -O2 -o example
Как я могу заархивировать свою цель для автомоек основывает все источники?
p.s Я прочитал, что automake должен знать все источники при вызове, это правильно? Это может быть объяснением, почему мой скрипт не работает.
Подробнее: У меня есть модификация Makefile для генерации и размещения эха на example_sources, и он содержит все мои файлы.
меня проверить различия между Makefile с моим сценарием и без и главное, эта часть:
С сценария:
am_example_OBJECTS =
С ручной зависимостью:
am_example_OBJECTS = ./main.$(OBJEXT)
Он кажется, что automake нужно знать сами файлы источников для создания make-файла.
попытайтесь распечатать 'example_SOURCES' и посмотреть, перечислены ли все исходные файлы. –
Для такого рода вещей, как правило, гораздо проще использовать cmake. – user35443
@ user35443 Это не выбор для использования автотелов. – Manticore