У меня очень простая структура каталогов:
Project
Project/src
Project/build
Исходные файлы находятся в Project/src
, и я делаю сборку out-of-src в Project/build
. После запуска cmake ../ ; make
я могу запустить исполняемый файл таким образом: Project/build$ src/Executable
- то есть Executable
создается в каталоге build/src
.
Как установить местоположение исполняемого файла в файле CMakeLists.txt
? Я попытался выполнить некоторые из примеров, найденных в cmake.org
, но ссылки, которые работают, похоже, не показывают этого поведения.
Здесь указан мой Project/src/CMakeLists.txt
файл.
include_directories(${SBSProject_SOURCE_DIR}/src)
link_directories(${SBSProject_BINARY_DIR}/src)
set ( SBSProject_SOURCES
main.cpp
)
add_executable( TIOBlobs ${SBSProject_SOURCES})
И верхний уровень Project/CMakeLists.txt
:
cmake_minimum_required (VERSION 2.6)
project (SBSProject)
set (CMAKE_CXX_FLAGS "-g3 -Wall -O0")
add_subdirectory(src)