【CMake 语法】(2) CMake 输出信息

1. message 命令

我们可以通过消息输出,来判断 CMake 执行流程、判断变量值。

我们使用 message 命令,输出消息。
message 命令格式:

message([<mode>] "message text" ...)

<mode> 表示模式,可以为: STATUS, WARNING, AUTHOR_WARNING, SEND_ERROR, FATAL_ERROR, DEPRECATION, NOTICE, VERBOSE, DEBUG, TRACE

案例: 不同级别的消息

cmake_minimum_required(VERSION 3.0.0)

# 为了分行确定输出内容
message("======================================")
message("1. NONE")
message(NOTICE "2. NOTICE")
message(STATUS "3. STATUS")
message(WARNING "4. WARNING")
message(DEPRECATION "5. DEPRECATION")
message(AUTHOR_WARNING "6. AUTHOR_WARNING")
message(SEND_ERROR "7. SEND_ERROR")
message(FATAL_ERROR "8. FATAL_ERROR")
message(VERBOSE "9. VERBOSE")
message(DEBUG "10. DEBUG")
message(TRACE "11. TRACE")
message("======================================")

(NONE)NOTICE => ‘通知消息’ 用于输出信息。
在这里插入图片描述
在这里插入图片描述
STATUS => ‘状态消息’ 有 --,看起来更重要。
在这里插入图片描述

WARNINGAUTHOR_WARNINGDEPRECATION => ’警告消息‘ 不同时候使用不同的警告;程序会继续执行。

发出警告的消息,AUTHOR_WARNING 用于开发时的警告,用 -Wno-dev 忽略,WARNING 为一般警告,程序可以继续执行,表示使用者需要注意,DEPRECATION 表示该功能弃用的警告。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

SEND_ERRORFATAL_ERROR => ‘错误消息’。
SEND_ERROR 会继续执行,但是会跳过生成的步骤,FATAL_ERROR 终止程序执行。
在这里插入图片描述
在这里插入图片描述

VERBOSEDEBUGTRACE => 不常用

2. 输出一般信息

cmake_minimum_required(VERSION 3.0.0)

# 为了分行确定输出内容
message("")
message("1. PROJECT_BINARY_DIR = ${PROJECT_BINARY_DIR}")
message("2. PROJECT_SOURCE _DIR = ${_DIR}")
message("3. CMAKE_CURRENT_SOURCE_DIR = ${CMAKE_CURRENT_SOURCE_DIR}")
message("4. CMAKE_CURRRENT_BINARY_DIR = ${CMAKE_CURRRENT_BINARY_DIR}")
message("5. CMAKE_CURRENT_LIST_FILE = ${CMAKE_CURRENT_LIST_FILE}")
message("6. CMAKE_CURRENT_LIST_LINE = ${CMAKE_CURRENT_LIST_LINE}")
message("7. CMAKE_MODULE_PATH = ${CMAKE_MODULE_PATH}")
message("8. CMAKE_SOURCE_DIR = ${CMAKE_SOURCE_DIR}")
message("9. EXECUTABLE_OUTPUT_PATH = ${EXECUTABLE_OUTPUT_PATH}")
message("10. LIBRARY_OUTPUT_PATH = ${LIBRARY_OUTPUT_PATH}")
message("11. PROJECT_NAME = ${PROJECT_NAME}")
message("12. PROJECT_VERSION_MAJOR = ${PROJECT_VERSION_MAJOR}")
message("13. PROJECT_VERSION_MINOR = ${PROJECT_VERSION_MINOR}")
message("14. PROJECT_VERSION_PATCH = ${PROJECT_VERSION_PATCH}")
message("15. CMAKE_SYSTEM = ${CMAKE_SYSTEM}")
message("16. CMAKE_SYSTEM_NAME = ${CMAKE_SYSTEM_NAME}")
message("17. CMAKE_SYSTEM_VERSION = ${CMAKE_SYSTEM_VERSION}")
message("18. BUILD_SHARED_LIBS = ${BUILD_SHARED_LIBS}")
message("19. CMAKE_C_FLAGS = ${CMAKE_C_FLAGS}")
message("20. CMAKE_CXX_FLAGS = ${CMAKE_CXX_FLAGS}")
message("21. CMAKE_SYSTEM_PROCESSOR   = ${CMAKE_SYSTEM_PROCESSOR}")
message("")

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值