PROJECT_BINARY_DIR变量则指的是CMake生成的构建文件所在的目录,也就是构建输出目录。这个目录通常包含了由CMake生成的构建文件、目标文件、库文件等。在构建过程中,CMake会根据PROJECT_BINARY_DIR来输出构建结果。 默认情况下,PROJECT_BINARY_DIR与PROJECT_SOURCE_DIR是同一个目录,也就是说构建文件会被输出到源代码...
PROJECT_NAME: hellocmake PROJECT_SOURCE_DIR: /home/meng/projects/c++_learning/cmake_course_02/02_project/02 PROJECT_BINARY_DIR: /home/meng/projects/c++_learning/cmake_course_02/02_project/02/build CMAKE_CURRENT_SOURCE_DIR: /home/meng/projects/c++_learning/cmake_course_02/02_project/02 C...
CMAKE_CURRENT_BINARY_DIR: 当前正在处理的构建目录。每个由add_subdirectory添加的目录将会在构建树中创建一个构建目录。对于直接在源码目录中编译的情况,当前正在处理的构建目录就是当前源码所在的目录。 CMAKE_CURRENT_LIST_DIR: 当前处理的CMakeLists.txt文件所在的目录。 CMAKE_CURRENT_LIST_FILE: 当前处理的CMak...
CMAKE_CTEST_COMMAND: 指向ctest可执行程序的全路径。 CMAKE_CURRENT_BINARY_DIR: 当前正在处理的构建目录。每个由add_subdirectory添加的目录将会在构建树中创建一个构建目录。对于直接在源码目录中编译的情况,当前正在处理的构建目录就是当前源码所在的目录。 CMAKE_CURRENT_LIST_DIR: 当前处理的CMakeLists.txt文件...
DESTINATION后面的路径可以自行制定,根目录默认为CMAKE_INSTALL_PREFIX,可以试用set方法进行指定,如果使用默认值的话,Unix系统的默认值为 /usr/local, Windows的默认值为 c:/Program Files/${PROJECT_NAME}。比如字linux系统下若LIBRARY的...
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib)8. 生成安装文件 使用install指令可以生成安装文件。例如,安装可执行文件和库文件:install(TARGETS MyProject MyLibrary RUNTIME DESTINATION bin ARCHIVE DESTINATION lib)以上操作仅是CMake的基础用法,CMake还有很多高级用法,例如交叉编译、自定义模块等...
在CMake 中,PROJECT_SOURCE_DIR和CMAKE_SOURCE_DIR是两个非常重要的变量,它们都指向项目的源代码目录,但在多项目(子项目或多个 CMakeLists.txt 文件)的情况下,它们的值有所不同。 CMAKE_SOURCE_DIR 定义:CMAKE_SOURCE_DIR指向最顶层的 CMakeLists.txt 文件所在的目录,即整个项目的根目录。
#Cmake工程名。这个指令隐式的定义了两个 cmake变量: PROJECT_BINARY_DIR以及PROJECT_SOURCE_DIR。分别指向项目的编译路径和工程路径。PROJECT (HELLO)#生成可执行文件,${}来引用变量。ADD_EXECUTABLE(Executable program name ${ Source files })到这里,一个可执行程序就生成了。如果要管理依赖第三方库的工程,...
PROJECT_NAME:项目名字 PROJECT_SOURCE_DIR:最外层的源码目录,存放main.cpp的地方 PROJECT_BINARY_DIR:最外层的输出目录,存放main.exe的地方 PROJECT_CURRENT_SOURCE_DIR:子模块源码目录 PROJECT_CURRENT_BINARY_DIR:子模块输出目录 CMAKE_xx_DIR:根项目
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/static_lib) 这样,构建生成的文件就会按照指定的路径存放。 二、安装拷贝 除了设置当前目录输出外,CMake还提供了安装拷贝的功能,即将构建生成的文件和库安装到目标系统的指定路径中。这通常是通过install()命令来实现的。 install()命令有多个参数,其中最常...