【问题标题】:How to set a single root for all CLion includes?如何为所有 CLion 包括单个根?
【发布时间】:2017-01-24 17:16:14
【问题描述】:

我的 CLion 项目组织如下:

main.cpp
foo/bar.h
foo/blah.h

main.cpp#include "foo/bar.h" 行,后者的位置没问题。

但是foo/bar.h#include "foo/blah.h" 行(注意目录名没有省略,即使两个文件恰好在同一个目录中)。

FAQ 建议“CLion 无法找到我的某些标题。它在哪里搜索它们?”的解决方案是添加该行

set(INCLUDE_DIRECTORIES .)

CMakeLists.txt。这种感觉是正确的答案,因为它与我们在命令行上所做的相匹配(添加标志 -I.),但这并没有帮助。

我如何告诉 CLion 我希望所有包含都相对于单个根?

相关问题:

【问题讨论】:

  • 向我们展示你如何包含它们,默认情况下你没有添加 include_directories(foo)
  • @jamek 完成。添加了#include 行。

标签: c++ clion


【解决方案1】:

简单的方法是这样的:

include_directories(${CMAKE_CURRENT_SOURCE_DIR})

如果您想指定接口或安装的包含路径(例如,您正在编写要由其他项目导入的库),请查看

的文档
target_include_directories(...)

【讨论】:

    猜你喜欢
    • 2017-01-18
    • 2022-12-12
    • 2016-08-14
    • 2023-03-21
    • 1970-01-01
    • 1970-01-01
    • 2021-11-02
    • 2017-10-04
    • 2022-12-14
    相关资源
    最近更新 更多