[√]添加预处理的2个不同方式:target_compile_definitions / add_definitions

简介: [√]添加预处理的2个不同方式:target_compile_definitions / add_definitions
add_definitions("-Ddef1")
add_executable(${app} ./main.cpp)
target_compile_definitions(${app} PRIVATE def2)

target_compile_definitions(${app} PRIVATE def2)

def1会出现在所有的项目中,跟书写的前后顺序没有任何关系,即时放在target后边,target也会加上

def2仅仅会出现在目标项目中

以下几种写法是等价的

target_compile_definitions(vld PRIVATE "-Ddef")
target_compile_definitions(vld PRIVATE "def")
target_compile_definitions(vld PRIVATE def)

target_compile_definitions向指定的target添加预处理器宏定义

target_compile_definitions是在构建工具中用于设置目标编译定义(Target Compile Definitions)的指令或属性。

在许多构建工具和编译器中,编译定义是一种方式,允许在编译过程中为源代码文件定义预处理变量。这些编译定义可以通过条件编译语句在源代码中进行条件性的编译。

通过使用target_compile_definitions,你可以向构建系统传递特定的编译定义,以便有条件地编译源代码文件或启用特定的功能。

add_definitions是向所有的编译器都添加预处理器宏定义

add_definitions是一个CMake命令,用于向CMake项目添加编译定义(Compile Definitions)。

在CMake中,编译定义是一种预处理变量,它可以在编译过程中为源代码文件定义,并且可以通过条件编译语句在源代码中进行条件性编译。add_definitions命令允许你向整个项目或特定的目标添加编译定义。

使用add_definitions命令的语法如下:

cmakeCopy Code
add_definitions(-DDEFINE_NAME1 -DDEFINE_NAME2 ...)

你可以在命令行中列出要添加的编译定义,每个定义以-D前缀开头。你可以指定一个或多个编译定义,用空格分隔开。

目录
相关文章
|
6月前
|
测试技术 编译器 vr&ar
CMake深度解析:掌握add_custom_command,精通Makefile生成规则(一)
CMake深度解析:掌握add_custom_command,精通Makefile生成规则
570 1
CMake Error: The source “xxx“ does not match the source “yyy“ used to generate cache. Re-run cmake
CMake Error: The source “xxx“ does not match the source “yyy“ used to generate cache. Re-run cmake
902 0
|
6月前
|
人工智能 机器人 测试技术
【CMake报错】Cannot specify compile definitions for target “PRIVATE“ which is not built...
【CMake报错】Cannot specify compile definitions for target “PRIVATE“ which is not built...
|
6月前
|
存储 Linux C++
CMake深度解析:掌握add_custom_command,精通Makefile生成规则(二)
CMake深度解析:掌握add_custom_command,精通Makefile生成规则
317 0
|
6月前
target overrides the `ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES` build setting defined in `Pods/Target S
target overrides the `ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES` build setting defined in `Pods/Target S
98 0
|
6月前
|
Unix Linux Shell
CMake深度解析:掌握add_custom_command,精通Makefile生成规则(三)
CMake深度解析:掌握add_custom_command,精通Makefile生成规则
1524 1
|
6月前
解决运行qmake:Project ERROR: Cannot run compiler ‘cl‘. Output:
解决运行qmake:Project ERROR: Cannot run compiler ‘cl‘. Output:
679 0
build.xml:391: javac doesn‘t support the “nativeheaderdir“ attribute
build.xml:391: javac doesn‘t support the “nativeheaderdir“ attribute
110 0
|
Windows
使用vs2015打开.pro文件报错:Project ERROR: Cannot run compiler 'cl' -- 完美解决
使用vs2015打开.pro文件报错:Project ERROR: Cannot run compiler 'cl' -- 完美解决
1419 0
使用vs2015打开.pro文件报错:Project ERROR: Cannot run compiler 'cl' -- 完美解决
|
前端开发 iOS开发 移动开发
Xcode 10: Build input file double-conversion cannot be found
升级到xcode10之后 ReactNative项目启动报错如下: error: Build input file cannot be found: '/Users/rod/dev/react/testing/awesome/node_modules/react-native/third-party/double-conversion-1.
3277 0