You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何打印check_cxx_source_runs()的详细运行报错信息?

check_cxx_source_runs 报错排查方案
  • 查看CMake内置日志

    CMake执行所有测试的完整输出都会存在构建目录的CMakeFiles/CMakeError.log文件中,check_cxx_source_runs的编译报错、链接错误、运行时输出都会完整记录在该文件内,直接打开即可看到和终端一致的全量报错信息。
  • 脚本内主动捕获输出

    调用check_cxx_source_runs时指定OUTPUT_VARIABLE参数(要求CMake 3.14及以上版本),即可直接把测试的全量输出存入变量,失败时直接打印即可:
    include(CheckCXXSourceRuns)
    
    # 填写你的测试代码
    set(TEST_CODE "
    #include <你依赖的头文件.h>
    int main() {
      // 测试逻辑
      return 0;
    }
    ")
    
    # 执行测试并捕获输出
    check_cxx_source_runs("${TEST_CODE}"
      DEPENDENCY_CHECK_PASS
      OUTPUT_VARIABLE DEPENDENCY_CHECK_OUTPUT
    )
    
    # 失败时打印完整报错
    if(NOT DEPENDENCY_CHECK_PASS)
      message(FATAL_ERROR "依赖检查失败,完整输出:\n${DEPENDENCY_CHECK_OUTPUT}")
    endif()
    
  • 开启调试模式打印实时输出

    执行cmake配置命令时添加--debug-trycompile参数,CMake会把check_cxx_source_runs的测试代码、编译指令、运行指令、所有输出直接打印到终端,同时会保留临时测试文件到CMakeFiles/CMakeTmp目录,方便你手动复现问题:
    cmake --debug-trycompile <你的CMake配置参数> 源码路径
    

内容的提问来源于stack exchange,提问作者User 10482

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 01:27:01