CMake学习之message

简介: CMake学习之message

一、message的基础使用

打印日志

message("参数1")
message("参数1" "参数2")
#运行 :cmake -S . -B build

二、message高级使用-指定日志级别

# FATAL_ERROR 执行停止,进程退出,生成退出 打印代码路径和行号 stderr
#message(FATAL_ERROR "TEST FATAL_ERROR")
# SEND_ERROR 进程继续,生成退出 不会生成 add_executable add_library stderr
# 打印代码路径和行号 
message(SEND_ERROR "TEST SEND_ERROR")
add_executable(test_message test_message.cpp)
message("after ERROR")
# WARNING 打印代码路径和行号 stderr
message(WARNING "TEST WARNING")
#NOTICE等同于 none也就是不加  message("TEST NOTICE")  stderr
message("TEST none")
message(NOTICE "TEST NOTICE")
#STATUS 加前缀 --  感兴趣 stdout
message(STATUS "TEST STATUS")
#VERBOSE 加前缀 -- 默认不显示,需要的详细信息 stdout
message(VERBOSE "TEST VERBOSE")
# 设置日志显示级别
# cmake -S . -B build --log-level=VERBOSE
# 标准输出重定向到文件log.txt 
# cmake -S . -B build --log-level=VERBOSE > log.txt 
# 标准错误输出 2 重定向到标准输出 1
# cmake -S . -B build --log-level=VERBOSE > log.txt  2>&1
#DEBUG 加前缀 -- 
message(DEBUG  "test DEBUG")
#TRACE 加前缀 -- 
# cmake -S . -B build --log-level=TRACE
message(TRACE "test TRACE")

三、message Reporting checks查找库日志

# CHECK_START 开始记录将要执行检查的消息
# CHECK_PASS 记录检查的成功结果
# CHECK_FAIL 记录不成功的检查结果
#开始查找
message(CHECK_START "查找xcpp")
#查找库cpp的代码
# message消息缩进
set(CMAKE_MESSAGE_INDENT "--")
#嵌套查找
message(CHECK_START "查找xlog")
#查找xlog代码
message(CHECK_PASS "成功")
message(CHECK_START "查找threadpool")
message(CHECK_FAIL "失败")
#取消缩进
set(CMAKE_MESSAGE_INDENT "")
#结束查找 查找失败
message(CHECK_FAIL "失败")

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

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

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


相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
相关文章
|
存储 算法 安全
【Freertos基础入门】队列(queue)的使用
【Freertos基础入门】队列(queue)的使用
2028 0
|
11月前
|
传感器 算法 物联网
室内定位无线技术的分类和原理全解析(一)
室内定位无线技术通过射频、声波、光信号等解决卫星信号无法覆盖的盲区,实现人员、物资精准定位。主流技术分射频、声波、光学及新兴四大类,涵盖蓝牙、UWB、Wi-Fi、红外、可见光、毫米波等,适用于工业、医疗、园区等多场景,各具精度、成本与部署优势。
|
8月前
|
安全 C++ 开发者
微软运行库下载安装教程_微软常用运行库合集使用指南
Windows用户常遇“缺少xxx.dll”错误,根源多为缺失微软运行库(如VC++、.NET、DirectX等)。它是软件运行必备的公共组件,避免重复代码、减小体积。推荐安装“微软常用运行库合集”,一键解决兼容性问题,提升系统稳定性与安全性。(239字)
4995 2
|
Linux Shell
Linux系统编程:掌握popen函数的使用
记得在使用完 `popen`打开的流后,总是使用 `pclose`来正确关闭它,并回收资源。这种做法符合良好的编程习惯,有助于保持程序的健壮性和稳定性。
1204 6
|
消息中间件 测试技术 API
FreeRTOS记录(七、FreeRTOS信号量、事件标志组、邮箱和消息队列、任务通知的关系)
我们在前面单独介绍过FreeRTOS的任务通知和消息队列, 但是在FreeRTOS中任务间的通讯还有信号量,邮箱,事件组标志等可以使用 这篇文章就这些成员与消息队列和任务通知的关系进行说明分析
2015 0
FreeRTOS记录(七、FreeRTOS信号量、事件标志组、邮箱和消息队列、任务通知的关系)
|
算法 Linux Windows
FFmpeg开发笔记(十七)Windows环境给FFmpeg集成字幕库libass
在Windows环境下为FFmpeg集成字幕渲染库libass涉及多个步骤,包括安装freetype、libxml2、gperf、fontconfig、fribidi、harfbuzz和libass。每个库的安装都需要下载源码、配置、编译和安装,并更新PKG_CONFIG_PATH环境变量。最后,重新配置并编译FFmpeg以启用libass及相关依赖。完成上述步骤后,通过`ffmpeg -version`确认libass已成功集成。
1226 1
FFmpeg开发笔记(十七)Windows环境给FFmpeg集成字幕库libass
|
存储 机器人
ROS2教程 07 参数Param
本文是关于ROS2(机器人操作系统2)中参数(Parameter)机制的教程,介绍了ROS2中参数的使用和管理,包括列出、获取、设置、删除参数,以及如何通过命令行和launch文件在启动节点时配置参数,并通过示例代码展示了如何在ROS2节点中声明和使用参数。
1465 1
|
监控 Ubuntu Linux
使用`dbus-monitor`命令深入了解DBus通信
`dbus-monitor`是Linux下用于观察DBus消息的命令行工具,有助于理解和调试应用程序间的通信。安装该工具可通过发行版的包管理器,如`apt-get`、`dnf`或`pacman`。基本用法是运行`dbus-monitor`监控系统总线,使用`--session`监控会话总线,配合过滤器如`sender`、`interface`等精细化查看特定消息。当面临DBus相关问题时,此工具能辅助排查和诊断。
|
NoSQL Linux 程序员
Linux objdump命令:深入解析与实战应用
`objdump`是Linux下的反汇编工具,用于将二进制文件转换为汇编代码,便于理解程序底层。它可以反汇编目标文件、可执行文件和库,支持多种参数,如显示符号表(-t)、反汇编代码(-d)、源代码与汇编混合视图(-S)。在实践中,结合-g编译选项和特定段(-j)反汇编,能辅助调试和分析。使用时注意包含调试信息,选择适当参数,并与其他工具(如gdb)配合使用。
|
缓存 安全 开发工具
程序与技术分享:Directx11学习笔记【三】第一个D3D11程序
程序与技术分享:Directx11学习笔记【三】第一个D3D11程序
1660 0