【发布时间】:2016-08-10 04:50:21
【问题描述】:
有没有办法检查 cmake 在失败的运行中做了什么?例如,我有一个依赖于 libbacktrace 的程序,我可以通过 gcc foo.c -lbacktrace 链接到该程序。但是当我写了CMakeLists.txt之类的
cmake_minimum_required(VERSION 2.8)
find_library (BACKTRACE_LIBRARY backtrace)
message (BACKTRACE_LIBRARY=${BACKTRACE_LIBRARY})
然后输入cmake <path>,它会打印出BACKTRACE_LIBRARY=BACKTRACE_LIBRARY-NOTFOUND。
我该如何找出问题所在?在放弃寻找 libbacktrace 之前,cmake 执行了哪些命令?它是否在执行任何操作?在autoconf中,命令都记录在config.log中,但是CMakeOutput.log在这种情况下是空白的。同样,cmake --trace 只是在一堆系统 cmake 文件之后回显CMakeLists.txt 的内容,在这种情况下是没有用的。
请注意,我不是在寻找一种方法来使 find_library 的这种特定调用工作 - 这只是一个示例。我的问题是:我的 CMakeLists.txt 没有按预期工作;有哪些工具可以帮助我找出失败的位置和原因?
【问题讨论】:
标签: cmake