У меня есть проект, который организован следующим образом:
<path_to_project>
|_ build
|_ exe1
| |_ src
| |_ includes
|_ exe2
| |_ src
| |_ includes
|_ libs
|_ src
|_ includes
Я хочу управлять всеми его частями с помощью CMake (я новичок в этом).
Дляэто я создал CMakeLists.txt
в корневом каталоге, в него я добавил строку:add_executable(exe1 ${EXE1_SOURCES})
Где определено EXE1_SOURCES
в CMakeLists.txt
в каталоге exe1/src
со всеми exe1
исходными файлами.
Когда я иду в build
каталог, и я делаю cmake ..
, он говорит add_executable called with incorrect number of arguments
, что означает, что он не может найти переменную EXE1_SOURCES
.
Я пробовал две вещи:
- Добавить
CACHE INTERNAL
в конце команды set - Добавьте
PARENT_SCOPE
в конце команды set, добавьте exe1/MakeLists.txt
и напишите set(EXE1_SOURCES ${EXE1_SOURCES} PARENT_SCOPE)
Но оба не удаются.
Какой самый простой способ достичь того, что я хочу сделать?