Как скомпилировать файлы C ++, организованные в структуре каталогов? - PullRequest
2 голосов
/ 22 января 2011

Я уже написал кучу кода и отсортировал его так, как показано ниже:

project/
+ include/
| + bar/
| |   bar.hpp
|   foo.hpp
+ src/
| + bar/
| |   bar.cpp
|   foo.cpp
|   main.cpp

Мой вопрос: как мне теперь вызвать g++, чтобы он связывалвсе вместе прекрасно?

Я уже понял, что мне нужно вызвать его с опцией -I, указывающей на каталог include /.Я предполагаю, что было бы наиболее разумно вызывать g ++ из проекта / папки.Кроме того, я рассматриваю возможность написания Makefile для автоматизации этого процесса, но должен признать, что я еще не провел много исследований по этому вопросу.

Ответы [ 2 ]

4 голосов
/ 22 января 2011

Я бы порекомендовал использовать какой-нибудь инструмент для сборки, например CMake или Autotools . Создание собственных Make-файлов может быть своего рода PITA, чтобы получить право.

Если у вас небольшая структура каталогов с некоторыми файлами C ++, которые вы хотите быстро скомпилировать, вы можете сделать что-то вроде этого:

find src/ -name "*.cpp" | xargs g++ -I include/
1 голос
/ 22 января 2011

Я думаю, что самый простой подход - использовать IDE - например, NetBeans сгенерирует файлы Makefile для вас ( другие IDE доступны ).

...