CMAKE_CURRENT_BINARY_DIR 就是当前build 目录 CMakeLists.txt如下 cmake_minimum_required(VERSION2.8)project(demo)message("当前目录如下...")message("hello")message(${CMAKE_CURRENT_BINARY_DIR})set(EXECUTABLE_OUTPUT_PATH${PROJEC
CMAKE_BINARY_DIR:顶层缓存路径,即执行 cmake 配置的路径 CMAKE_CURRENT_BINARY_DIR:当前缓存路径,add_subdirectory(subproject subpath)添加的subpath PROJECT_BINARY_DIR:当前项目缓存路径,即最后一个 project 所在路径 CMAKE_BUILD_TYPE:编译类型,常用有Debug/Release,RelWithDebInfo/MinSizeRel不常用 CMAKE_<LANG...
CMAKE_CURRENT_BINARY_DIR: 当前处理的CMakeLists.txt的二进制目录 CMAKE_INSTALL_PREFIX: 安装目录的根目录 CMAKE_MODULE_PATH: CMake模块的根目录 CMAKE_BUILD_TYPE: 编译类型 CMAKE_CXX_FLAGS: C++编译器选项 在Cocos 中使用 CMake Android 在编译 C++ 代码使用了 cmake,这是原生支持的. 我们会通过...
CMAKE_CURRENT_SOURCE_DIR:当前处理的 CMakeLists.txt 所在的路径 CMAKE_CURRENT_BINARY_DIR:target 编译目录 CMAKE_CURRENT_LIST_DIR:CMakeLists.txt 的完整路径 EXECUTABLE_OUTPUT_PATH:重新定义目标二进制可执行文件的存放位置 LIBRARY_OUTPUT_PATH:重新定义目标链接库文件的存放位置 1. 2. 3. 4. 5. 6. 7...
PROJECT_BINARY_DIR: 项目编译后存放的路径/project/build CMAKE_CURRENT_BINARY_DIR:与PROJECT_BINARY_DIR基本相同 CMAKE_CURRENT_SOURCE_DIR:与PROJECT_SOURCE_DIR基本相同 在cmake中也可以利用一些循环方法设置变量: 代码语言:javascript 代码运行次数:0
4、CMAKE_CURRENT_BINARY_DIR 如果是in-source边柜,它和CMAKE_CURRENT_DIR一样,如果是out-of-source编译,他指的是target编译目录。 使用ADD_SUBDIRECTORY(src bin)可以更改这个变量的值。 使用SET(EXECUTABLE_OUTPUT_PATH <新路径>)并不会对这个变量造成影响,它仅仅是修改了最终目标文件存放的路径。
binary_dir(可选):构建输出的目录,如果未指定,CMake 会使用 source_dir 作为构建目录。 EXCLUDE_FROM_ALL(可选):如果指定,该子目录的构建目标不会包含在 all 目标中,即默认情况下不会在调用 make 时构建。 后两项我们通常用不到可以忽略,在建立关系后,父节点的变量可以被子节点继承,执行cmake命令时,也会一...
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/Table.h COMMAND MakeTable ${CMAKE_CURRENT_BINARY_DIR}/Table.h DEPENDS MakeTable COMMENT "This is a test" ) (2)自定义构建事件 add_custom_command(TARGET <target> PRE_BUILD | PRE_LINK | POST_BUILD ...
PROJECT_BINARY_DIR 执行cmake命令的目录 CMAKE_CURRENT_SOURCE_DIR 当前CMakeLists.txt文件所在目录 CMAKE_C_FLAGS设置C编译选项 CMAKE_CXX_FLAGS设置C++编译选项 CMAKE_C_COMPILER设置C编译器 CMAKE_CXX_COMPILER设置C++编译器 EXECUTABLE_OUTPUT_PATH设置编译后可执行文件目录 ...
CMAKE_INCLUDE_CURRENT_DIR :自动添加CMAKE_CURRENT_BINARY_DIR 和CMAKE_CURRENT_SOURCE_DIR 到当前处理的CMakeLists.txt PRIVATE: 将链接只用于当前目标,相当于.c包含,对外的.h不包含 INTERFACE: 将链接只用于依赖于当前目标的文件,当前目标不使用; 相当于.c不使用,对外的.h使用 ...