Я использую cmake для компиляции одного из моих рабочих проектов, вот сделка
-
client/
CMakeLists.txt
server/
CMakeLists.txt
libs/
libstuff/
CMakeLists.txt
CMakeLists.txt
Итак, я хочу иметь возможность компилировать каждый подпроект индивидуально и создавать как клиент, так и сервер из корневой папки.
Допустим, клиент и сервер нуждаются в libstuff.
Я пробовал использовать "add_subdirectory" с путем к библиотеке в CMakeLists.txt как на клиенте, так и на сервере, он работает, когда вы компилируете сервер или клиент, но если вы попытаетесь запустить оба из корневого каталога:
CMake Error at common/libplugin/CMakeLists.txt:33 (ADD_LIBRARY):
add_library cannot create target "plugin" because another target with the
same name already exists. The existing target is a static library created
in source directory "/home/adrien/git/r-type/common/libplugin". See
documentation for policy CMP0002 for more details.
Итак, я вроде как новичок в cmake, и я не уверен, что мне делать, следует ли мне использовать add_dependencies?
Спасибо за вашу помощь,