17

我刚开始使用 Clion IDE。也许这是写在某个地方,但我没有在谷歌搜索中看到它。如果我message()在我的 CMake 脚本中调用,我可以在 Clion 的哪个位置看到输出?这些消息调用是我知道如何调试 CMake 脚本的唯一方法。

4

4 回答 4

21

使用message(WARNING ...)而不是message(...). 警告转到标准错误。

于 2015-05-21T10:40:58.983 回答
8

另一种可能的解决方法:

  • 如果启用,请禁用“cmake auto-reload”
  • 在您更改 cmake 文件中的某些内容后,不要触发“重新加载更改”
  • 运行/构建您的项目

当 clion 开始构建时,它会意识到 cmake 文件不是最新的并重新加载它们,但与其他构建输出一样,它会显示在 Messages 选项卡中。

于 2016-01-13T17:14:28.820 回答
3

显示警告和错误,但当前禁止显示其他消息。但是,有一个关于此问题的功能请求。

于 2015-11-10T09:23:30.923 回答
2

CLion 2016.2.2 Build #CL-162.1967.7 开始,在更改CMakeLists.txt后首次构建项目时,CLion在构建 ( + ) 期间在其消息工具窗口 ( Alt+ ) 中显示 CMake 消息(状态)输出。但正如其他答案中所述,此输出不会显示在 CLion 的CMake工具窗口中(正如许多人所希望的那样)。0CtrlF9

更新:上面我写了 CLion “正在显示消息(状态)输出”。我现在发现这是间歇性发生的。@Michael 写道,如果您在修改 cmake 文件后跳过 cmake reload 会发生这种情况,但我发现即使在这种情况下,CLion 有时也不会在其消息工具窗口中显示任何 CMake 输出。到目前为止,我还没有发现使 CLion 显示 CMake 消息(状态)输出的确切情况,当/如果我这样做时会在这里报告。

重大更新: CLion 开启 2016.3 EAP:用户定义文字、CMake 输出、C11 关键字补全等。特别参见:CMake 输出窗口:一个单独的我认为它解决了整个问题:CLion 2016.3 EAP 添加了一个包含 CMake 命令输出的新选项卡。

当然,这是EAP,它带有 JetBrains 的警告:

将 EAP 与传统的预发布软件区分开来很重要。请注意,EAP 版本的质量有时甚至可能远低于通常的 beta 标准。

所以使用它需要您自担风险,但如果您需要 CMake 调试,您可能会认为这是值得冒的风险。

于 2016-09-08T19:01:02.457 回答