Makefile, чтобы поместить объектные файлы из исходных файлов разных каталогов в один отдельный каталог? - PullRequest
23 голосов
/ 05 ноября 2010

Я использую UnitTest ++, чтобы позволить мне создавать модульные тесты для некоторого кода C ++ (который должен основываться на Linux или Mac OS X).У меня есть структура каталогов:файлы .o в подкаталоге obj каталога test.Как мне изменить этот Makefile для этого?

Я пытался добавить "obj /" к объектам и переменным test_objects, но я не могу понять, как изменить правило% .o, чтобы оно зналогде файлы .o находятся и ссылаются на правильные файлы .cpp.Нужно ли создавать два отдельных правила, по одному для каждого набора файлов .cpp?

Было бы проще, если бы вместо определения переменных src и test_src я просто сделал Makefile для сборки .o (в obj/) для всех файлов .cpp (как в том же каталоге, что и Makefile, так и в ../src/)?

1 Ответ

36 голосов
/ 05 ноября 2010

Существует более одного способа сделать это, но это довольно хороший способ (мне действительно нужно иметь эту горячую клавишу).

...