PROJECT_BINARY_DIR变量则指的是CMake生成的构建文件所在的目录,也就是构建输出目录。这个目录通常包含了由CMake生成的构建文件、目标文件、库文件等。在构建过程中,CMake会根据PROJECT_BINARY_DIR来输出构建结果。 默认情况下,PROJECT_BINARY_DIR与PROJECT_SOURCE_DIR是同一个目录,也就是说构建文件会被输出到源代码...
(1)CMAKE_BINARY_DIR、PROJECT_BINARY_DIR、<projectname>_BINARY_DIR三个变量指代的内容是一致的,如果是 in source 编译,指得就是工程顶层目录,如果是 out-of-source 编译,指的是工程编译发生的目录。PROJECT_BINARY_DIR 跟其他指令稍有区别,暂时可以理解为他们是一致的。 (2)CMAKE_SOURCE_DIR、PROJECT_SOURCE...
通过 SET 指令,指定EXECUTABLE_OUTPUT_PATH和LIBRARY_OUTPUT_PATH,可覆盖之前设置的目标输出,如 :: SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin) SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/lib) 1. 2. (PROJECT_BINARY_DIR为构建目录,即 build 目录) 整个目录树如下 :: . ├── CMakeLis...
< projectname >_BINARY_DIR:二进制文件保存路径; < projectname >_SOURCE_DIR:源代码路径; project(CRNode) 执行了上一条指令,即定义了一个项目名称CRNode,相应的会生成两个变量:CRNode_BINARY_DIR, CRNode_SOURCE_DIR。 cmake中预定义了两个变量:PROJECT_BINARY_DIR与PROJECT_SOURCE_DIR。 在这个例子中: ...
PROJECT_BINARY_DIR:运行cmake命令的目录,通常为${PROJECT_SOURCE_DIR}/build PROJECT_NAME:返回通过 project 命令定义的项目名称 CMAKE_CURRENT_SOURCE_DIR:当前处理的 CMakeLists.txt 所在的路径 CMAKE_CURRENT_BINARY_DIR:target 编译目录 CMAKE_CURRENT_LIST_DIR:CMakeLists.txt 的完整路径 ...
1、CMAKE_BINARY_DIR PROJECT_BINARY_DIR ** <projectname>_BINARY_DIR 这三个变量指代的内容是一样的,如果是 in source 编译,指的就是工程顶层目录,如果是out-ofosource编译,指的就是工程编译发生的目录。 2、CMAKE_SOURCE_DIR PROJECT_SOURCE_DIR ** ...
1 cmake 变量引用的方式 使用 ${} 进行变量的引用。在 IF 等语句中,是直接使用变量名而不通过 ${} 取值。 2 cmake 自定义变量的方式 主要有隐式定义和显式定义两种,举一个隐式定义的例子,就是 PROJECT 指令,他会隐式的定义\\_BINARY_DIR 和\_SOURCE_
CMAKE_BINARY_DIR,PROJECT_BINARY_DIR:这两个变量内容一致,如果是内部编译,就指的是工程的顶级目录,如果是外部编译,指的就是工程编译发生的目录。 CMAKE_SOURCE_DIR,PROJECT_SOURCE_DIR:这两个变量内容一致,都指的是工程的顶级目录。 CMAKE_CURRENT_BINARY_DIR:外部编译时,指的是target目录,内部编译时,指的是顶...
PROJECT(工程名字) 这条指令会自动创建两个变量: <projectname>_BINARY_DIR(二进制文件保存路径) <projectname>_SOURCE_DIR(源代码路径) cmake系统也帮助我们预定义了PROJECT_BINARY_DIR和PROJECT_SOURCE_DIR其值与上述对应相等 SET(变量名 变量值) SET(VAR [VALUE] [CACHE TYPEDOCSTRING [FORCE]]) ...
PROJECT_BINARY_DIR是cmake系统变量,意思是执行cmake命令的目录,我们计划在build目录下执行cmake命令,所以这个变量也就等同于build目录 add_library(lib_name STATIC/SHARED src)# 函数作用:生成库。# 参数lib_name:是要生成的库名称,# 参数STA...