方法1:
通过设置EXECUTABLE_OUTPUT_PATH和LIBRARY_OUTPUT_PATH这两个变量的值指定目标文件的放置目录:
SET(EXECUTABLE_OUTPUT_PATH <your_specified_path>)
SET(LIBRARY_OUTPUT_PATH <your_specified_path>)
对于多个build配置(Release,Debug等)的情况,CMAKE会为每一个配置生成一个子目录。根据当前使用的build配置,目标文件会被放置在<your_specified_path>/Debug或<your_specified_path>/Release中。
方法2:
通过设置Target的属性ARCHIVE_OUTPUT_DIRECTORY,LIBRARY_OUTPUT_DIRECTORY和RUNTIME_OUTPUT_DIRECTORY指定输出目录。
静态库: ARCHIVE_OUTPUT_DIRECTORY_<CONFIG>
动态库: LIBRARY_OUTPUT_DIRECTORY_<CONFIG>
可执行文件: RUNTIME_OUTPUT_DIRECTORY_<CONFIG>
"把可执行Target放到${CMAKE_BINARY_DIR}/bin目录中"
set_target_properties(${target} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin)
"把DEBUG版的可执行Target放到${CMAKE_BINARY_DIR}/bin目录中"
set_target_properties(${target} PROPERTIES RUNTIME_OUTPUT_DIRECTORY_DEBUG ${CMAKE_BINARY_DIR}/bin)
"把RELEASE版的可执行Target放到${CMAKE_BINARY_DIR}/bin目录中"
set_target_properties(${target} PROPERTIES RUNTIME_OUTPUT_DIRECTORY_RELEASE ${CMAKE_BINARY_DIR}/bin)