CMake学习之内部变量

简介: CMake学习之内部变量

一、提供信息的变量

project()
项目名称 ${PROJECT_NAME}对应project的name

二、改变行为的变量

BUILD_SHARED_LIBS 
1.缓存变量
add_library()
add_library(${PROJECT_NAME} xlog.cpp xlog.h)
2.ON 创建共享库(动态库) 
3.OFF静态库 
set(BUILD_SHARED_LIBS ON) #动态库
set(BUILD_SHARED_LIBS OFF) #静态库
4.默认OFF

三、描述系统的变量

message("MSVC = " ${MSVC})
message("WIN32 = " ${WIN32})
message("UNIX = " ${UNIX})
message("CMAKE_SYSTEM_NAME = " ${CMAKE_SYSTEM_NAME})

四、控制构建过程的变量

输出路径控制 
CMAKE_COLOR_MAKEFILE 是否生成makefile的颜色,默认是ON
set(CMAKE_COLOR_MAKEFILE OFF)

推荐一个零声学院项目课,个人觉得老师讲得不错,分享给大家:

零声白金学习卡(含基础架构/高性能存储/golang云原生/音视频/Linux内核)

https://xxetb.xet.tech/s/VsFMs


相关文章
|
6月前
|
存储 安全 Java
解释Python中的引用和赋值机制。
Python中,变量是对象引用,不存储数据,而存数据在内存的位置。赋值(=)创建变量并让其指向内存中的对象。当多个变量指向同一对象时,它们共享引用。Python使用引用计数管理对象生命周期,对象引用为0时回收。了解这些机制对优化内存使用和防止内存泄漏很重要。例如: ```markdown ```python a = 5 b = a # b引用了同一数字5 del a # 数字5的引用计数仍为1,未被回收 ``` 引用计数并非唯一机制,Python还采用其他策略处理循环引用等复杂情况。
55 2
|
6月前
|
存储 缓存 算法
【CMake 基础教程 】深入理解CMake变量:类型、原理及最佳实践
【CMake 基础教程 】深入理解CMake变量:类型、原理及最佳实践
198 0
|
存储 Shell 编译器
makefile 变量赋值方式
makefile 变量赋值方式
98 1
|
编译器 Python
python之局部变量和全局变量的定义,两者之间的区别和使用方法,global和nonlocal的定义和使用方法,可变与不可变类型的定义和示例
python之局部变量和全局变量的定义,两者之间的区别和使用方法,global和nonlocal的定义和使用方法,可变与不可变类型的定义和示例
149 0
|
3月前
|
Python
Python变量的作用域_参数类型_传递过程内存分析
理解Python中的变量作用域、参数类型和参数传递过程,对于编写高效和健壮的代码至关重要。正确的应用这些概念,有助于避免程序中的错误和内存泄漏。通过实践和经验积累,可以更好地理解Python的内存模型,并编写出更优质的代码。
35 2
|
3月前
|
Python
Python中多变量赋值
【8月更文挑战第5天】
396 5
|
4月前
|
Linux
Linux环境变量及作用
Linux中的环境变量是系统配置参数,如HOME指示用户家目录,MAIL指邮件位置。`env`命令显示所有环境变量。系统有数百个变量,但了解关键的几个足够,如PATH、HOME、TERM等。环境变量由变量名和值组成,可自定义,如WORKDIR。局部变量需用`export`使其全局有效,以便其他用户使用。`su`命令用于切换用户,展示不同用户环境下变量值的差异。
Linux环境变量及作用
makefile 变量的替换,嵌套引用,命令行变量
makefile 变量的替换,嵌套引用,命令行变量
109 1
|
6月前
|
存储 缓存 算法
CMake 变量作用域全解析:扩展、管理与应用
CMake 变量作用域全解析:扩展、管理与应用
101 0
|
Shell
makefile 变量的扩展
makefile 变量的扩展
47 1