CMake变量

影响CMake行为的变量

BUILD_SHARED_LIBS

如果为ON,则add_library默认创建共享库

CMAKE_ABSOLUTE_DESTINATION_FILES

安装文件列表时使用ABSOLUTE DESTINATION 路径

CMAKE_AUTOMOC_RELAXED_MODE

在严格和宽松的automoc模式间切换

CMAKE_BACKWARDS_COMPATIBILITY

构建工程所需要的CMake版本

CMAKE_BUILD_TYPE

指定基于make的产生器的构建类型

CMAKE_COLOR_MAKEFILE

开启时,使用Makefile产生器会产生彩色输出

CMAKE_CONFIGURATION_TYPES

指定有哪些构建类型

CMAKE_DISABLE_FIND_PACKAGE_<PackageName>

禁用对应的find_package调用

CMAKE_ERROR_ON_ABSOLUTE_INSTALL_DESTINATION

要求cmake_install.cmake脚本在遇到一个文件指定的INSTALL DESTINATION 是绝对路径时,报告错误并退出。

CMAKE_FIND_LIBRARY_PREFIXES

当查找库时,自动添加到库名称的前缀,UNIX系统,该值通常指定为lib

CMAKE_FIND_PACKAGE_WARN_NO_MODULE

让find_package命令在被调用但没有指定一个显式模式(MODULE, CONFIG or NO_MODULE)时,给出警告信息。

CMAKE_IGNORE_PATH

那些被FIND_XXX()命令忽略的路径

CMAKE_INCLUDE_PATH

被FIND_FILE()和FIND_PATH()用于搜索的路径

CMAKE_INSTALL_DEFAULT_COMPONENT_NAME

用于install()命令中的默认组件

CMAKE_INSTALL_PREFIX

安装路径的前缀

CMAKE_LIBRARY_PATH

FIND_LIBRARY()命令搜索时使用的路径

CMAKE_MFC_FLAG

告诉CMake使用MFC链接库或可执行文件

CMAKE_MODULE_PATH

搜索CMake模块的路径列表

CMAKE_NOT_USING_CONFIG_FLAGS

如果为true,将跳过_BUILD_TYPE标记

CMAKE_POLICY_DEFAULT_CMP<NNNN>

Default for CMake Policy CMP<NNNN> when it is otherwise left unset.

CMAKE_PREFIX_PATH

FIND_XXX()命令搜索时使用的基路径,会添加相应的子目录。

CMAKE_PROGRAM_PATH

FIND_PROGRAM()搜索时使用的路径。

CMAKE_SKIP_INSTALL_ALL_DEPENDENCY

不要让install目标依赖all目标

CMAKE_SYSTEM_IGNORE_PATH

那些被FIND_XXX()命令忽略的路径

CMAKE_SYSTEM_INCLUDE_PATH

FIND_FILE()和FIND_PATH()命令搜索时使用的路径

CMAKE_SYSTEM_LIBRARY_PATH

FIND_LIBRARY()命令搜索时使用的路径

CMAKE_SYSTEM_PREFIX_PATH

FIND_XXX()命令搜索时使用的基路径,会添加相应的子目录。

CMAKE_SYSTEM_PROGRAM_PATH

FIND_PROGRAM()搜索时使用的路径。

CMAKE_USER_MAKE_RULES_OVERRIDE

指定一个CMake文件来覆盖平台信息

CMAKE_WARN_ON_ABSOLUTE_INSTALL_DESTINATION

要求cmake_install.cmake脚本在遇到一个文件指定的INSTALL DESTINATION 是绝对路径时,给出警告信息



描述系统的变量

APPLE

为true表示当前运行的平台是Mac OSX

BORLAND

如果当前使用的是Borland编译器,则为true.

CMAKE_CL_64

如果使用的是微软的64位编译器,则为true

CMAKE_COMPILER_2005

如果使用的是微软的Visual Studio 2005编译器,则为true.

CMAKE_HOST_APPLE

当主机系统为Apple OSX时,为true.

CMAKE_HOST_SYSTEM

cmake当前运行的主机系统

CMAKE_HOST_SYSTEM_NAME

cmake当前运行的主机系统的名称

CMAKE_HOST_SYSTEM_PROCESSOR

cmake当前运行的主机系统CPU的名称

CMAKE_HOST_SYSTEM_VERSION

cmake当前运行的OS版本号

CMAKE_HOST_UNIX

当操作系统为Unix或类Unix系统时,为true。(如Cygwin和Apple)

CMAKE_HOST_WIN32

当操作系统为Windows系统,包括64位Window系统时,为true.

CMAKE_LIBRARY_ARCHITECTURE

如果检测到,则是指目标架构库目录

CMAKE_LIBRARY_ARCHITECTURE_REGEX

匹配所有可能的目标架构库目录的正则表达式

CMAKE_OBJECT_PATH_MAX

本地构建工具允许的对应文件全路径长度的最大值

CMAKE_SYSTEM

CMake编译的目标系统名称

CMAKE_SYSTEM_NAME

CMake编译的目标操作系统

CMAKE_SYSTEM_PROCESSOR

CMake编译的目标系统的CPU名称

CMAKE_SYSTEM_VERSION

CMkae编译的目标系统的版本号

CYGWIN

使用cygwin系统

MSVC

使用Microsoft Visual C

MSVC80

使用Microsoft Visual C 8.0

MSVC_IDE

使用Microsoft Visual C IDE

MSVC_VERSION

Microsoft Visual C/C++ 使用的版本号

UNIX

Unix和类Unix系统

WIN32

Windows系统,包括64位Window系统

XCODE_VERSION

XCode的版本



  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
CMake有七种常见的变量类型,包括: 1. 提供信息的变量:这些变量提供了有关系统和构建过程的信息,例如CMAKE_VERSION用于指示CMake的版本号。 2. 控制变量:这些变量用于控制构建过程的行为,例如CMAKE_BUILD_TYPE用于指定构建类型(例如Debug或Release)。 3. 描述系统的变量:这些变量描述了系统的各种属性,例如CMAKE_SYSTEM_NAME用于指定目标系统的名称(例如Windows或Linux)。 4. 控制构建过程的变量:这些变量用于控制构建过程的各个方面,例如CMAKE_MODULE_PATH用于指定CMake模块的搜索路径。 5. 语言变量:这些变量用于描述编程语言的相关属性,例如CMAKE_C_FLAGS用于指定C语言编译器的编译选项。 6. CTest变量:这些变量用于配置CTest测试框架的行为,例如CTEST_CONFIGURATION_TYPE用于指定测试配置类型。 7. CPack变量:这些变量用于配置CPack打包工具的行为,例如CPACK_GENERATOR用于指定打包生成器。 引用提供了这七种变量的详细列表,而引用则提供了引用这些变量的方式。对于变量引用,可以使用${}进行引用,除了在IF等语句中,可以直接使用变量名而不需要${}。引用提供了一些关于CMake常见变量的参考资料。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [C++:CMake常用变量CMAKE_CXX_FLAGS、CMAKE_BUILD_TYPE、×_BINARY_DIR】](https://blog.csdn.net/u013250861/article/details/127935342)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值