Cmake add包含clang的路径

时间:2016-03-18 07:24:54

标签: c++ c++11 cmake clang include-path

我目前正在使用GitHub的Atom开发C ++。我找到了插件autocomplete-clang,它为Atom添加了自动完成功能。 我的问题是,我使用cmake来构建我的程序,我也使用这样的项目结构:

- Sensors
-- src
-- inc
- LowLevel
-- src
-- inc
- System
-- src
-- inc

我只在代码中的#include "someHeaderFromSystem.h"中使用someSourceFileFromLowLevel.cxx。这意味着,该clang找不到包含文件。

有没有办法告诉clang在哪里找到文件,哪些不会改变任何全局系统变量?

2 个答案:

答案 0 :(得分:0)

没问题,那是include_directories的用途。

它指定编译器将搜索的其他包含目录。

如果您在Sensors,LowLevel,System中有 CMakeLists.txt ,则可以在每个中添加:

include_directories(inc)

如果您只有主CMakeLists.txt

include_directories(Sensors/inc LowLevel/inc System/inc)

答案 1 :(得分:0)

set(CMAKE_EXPORT_COMPILE_COMMANDS ON)添加到生成文件CMakeLists.txt的{​​{1}}文件中。使用此文件,compile_commands.json指令正常工作。