在上面的示例中,我们使用CMAKE_SOURCE_DIR来指定source_file的路径,并将其复制到构建目录中的copied_file。 2. EXECUTABLE_OUTPUT_PATH EXECUTABLE_OUTPUT_PATH是一个用于指定可执行文件输出目录的变量。默认情况下,CMake将生成的可执行文件放在构建目录的根目录下,但你可以通过设置EXECUTABLE_OUTPUT_PATH来改变这个行为。
指定库文件的输出路径有两种方法:设置EXECUTABLE_OUTPUT_PATH指定输出路径,设置LIBRARY_OUTPUT_PATH指定输出路径。 使用EXECUTABLE_OUTPUT_PATH指定输出路径只对动态库有效,因为Linux下生成的动态库默认是有执行权限的,而静态库没有。 我们在这只演示通过LIBRARY_OUTPUT_PATH指定输出路径。 我们执行cmake并编译。 可以看到库...
SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/../bin) 1. 2.静态库 lib 输出路径: set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/../bin) 1. 3.动态库输出路径(注意这个放在最后): SET_TARGET_PROPERTIES(dllname PROPERTIES RUNTIME_OUTPUT_DIRECTORY ../bin) 1. 4.上面两条语句分别...
set (EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin) 这里又出现一个新的命令set,是用于定义变量的,EXECUTABLE_OUT_PATH和PROJECT_SOURCE_DIR是CMake自带的预定义变量,其意义如下 EXECUTABLE_OUTPUT_PATH :目标二进制可执行文件的存放位置 PROJECT_SOURCE_DIR:工程的根目录 所以,这里set的意思是把存放elf文件的...
set(EXECUTABLE_OUTPUT_PATH ${CMAKE_BINARY_DIR}/bin) 这里,CMAKE_BINARY_DIR变量用于指定可执行文件输出的根目录。在编译项目时,可执行文件将被输出到${CMAKE_BINARY_DIR}/bin目录中。 请注意,${CMAKE_BINARY_DIR}和${CMAKE_CURRENT_BINARY_DIR}变量之间的区别。${CMAKE_BINARY_DIR}是指二进制文件的根...
set (EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin) add_compile_options(-std=c++11 -Wall) add_executable(main main.cpp) 6.1.3 运行查看 然后cd到build目录下,执行cmake … && make命令,就可以在bin目录下得到main的可执行文件 6.2 添加编译选项 ...
# 设置可执行文件的存放目录set(EXECUTABLE_OUTPUT_PATH${PROJECT_SOURCE_DIR}/bin) 重新执行一遍cmake .. 和make 此刻bin目录下已经有可执行文件 主目录下的CMAKE 查看当前我们的文件目录,我们也可以在主目录中编写CMAKE 主目录cmake cmake_minimum_required(VERSION3.0)project(main) ...
--EXECUTABLE_OUTPUT_PATH 生成的可执行文件路径 --LIBRARY_OUTPUT_PATH 生成的库路径 --BUILD_SHARED_LIBS 通过add_library构建“STATIC/SHARED”库 --CMAKE_CURRENT_LIST_FILE 当前正在处理的文件列表的完整路径 --CMAKE_CURRENT_LIST_LINE 当前正在处理的文件的行号 ...
一.SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/../bin) 上面的语句能设置可执行文件的输出目录 在Win + VS环境下,会自动在你所设置的目录后面扩展一层<CONFIG>目录,所以最终生成的Debug版本程序会在${PROJECT_SOURCE_DIR}/../bin/Debug目录下,Release版本程序会在${PROJECT_SOURCE_DIR}/../bin/Relea...
CMAKE_INCLUDE_PATH:环境变量,非cmake变量; CMAKE_LIBRARY_PATH:环境变量; CMAKE_CURRENT_SOURCE_DIR:当前处理的CMakeLists.txt文件所在路径; CMAKE_CURRENT_BINARY_DIR:target编译目录; 使用ADD_SURDIRECTORY指令可以更改该变量的值; SET(EXECUTABLE_OUTPUT_PATH < dir >) 指令不会对该变量有影响,但改变了最终...