cmake, add_subdirectory без добавления его в сгенерированный файл проекта? - PullRequest
1 голос
/ 07 августа 2011

У меня есть проект, созданный с помощью cmake.В моих cmakelists у меня есть add_subdirectory(externals/foo) для построения зависимости "foo", у которой есть свои собственные cmakelists.

Теперь это так, что также все исходные файлы и заголовки foo включены в сгенерированный файл проекта (ям с использованием Eclipse).Но все, что я хочу, это чтобы мой проект был доступен только в Eclipse (Eclipse имеет проблемы с подпроектами в той же структуре папок).Так что cmakelists из "foo" используется только для автоматического создания "foo" и связывания его с моим проектом.Однако я не хочу видеть это в своей IDE.

Возможно ли это?Если да: как?

Ответы [ 2 ]

1 голос
/ 12 августа 2011

Когда я использую Eclipse с CMake, я создаю проект Eclipse вручную (с помощью мастера New Project), а для CMake я использую стандартный генератор makefile.Это требует немного дополнительной настройки: вам нужно установить каталог сборки в свойствах проекта, если вы делаете сборку из исходного кода, и я обычно устанавливаю команду сборки на make VERBOSE=1.

IЯ не уверен, так как я не использовал генератор (ы) Eclipse, но из-за отсутствия лучшего решения, возможно, этот метод решит вашу проблему, так как он дает вам больший контроль над проектом Eclipse.

0 голосов
/ 12 августа 2011

Нет, как я должен знать, что компилировать, если вы не говорите, что компилировать? Если вы не хотите, чтобы проект был в вашем файле проекта, просто не добавляйте его.

Просто скомпилируйте внешнюю библиотеку самостоятельно (используйте «cmake externals / foo»), а затем добавьте библиотеки в CMakeLists.txt вашего проекта с помощью

target_link_libraries(your_project externals/foo/bin/foo.lib)
...