cmake CLion不适用于其他目录中的任何文件

kgsdhlau  于 2022-11-24  发布在  其他
关注(0)|答案(1)|浏览(224)

我有一个目录结构如下:

libs/
  sdw/
  glm-0.9.7.2/
    glm/
    ...
src/
  ProjectName.cpp

sdw目录中充满了.cpp的类和相应的.h文件。在这些文件中,如果我输入#include ",它会自动建议该目录中的头文件。语法突出显示也适用于任何包含的类,就像建议方法一样。
但是,在ProjectName.cpp中,我没有得到这样的头文件建议,语法突出显示和方法建议也不存在。唯一起作用的是来自std库,如vector等。
对于glm目录中的任何内容,没有文件得到任何突出显示等。
以下是提供给我的CMakeLists.txt的相关部分:

set(GLM_INCLUDE_DIRS libs/glm-0.9.7.2)

find_package(SDL2 REQUIRED)

include_directories(${SDL2_INCLUDE_DIRS} ${GLM_INCLUDE_DIRS})
include_directories(libs/sdw)

add_executable(ProjectName
        libs/sdw/Utils.cpp
        libs/sdw/Triangle.cpp
        src/ProjectName.cpp)
  • libs/sdw/Utils.cpp这样的文件里面我正在做的事情:#include "Triangle.h" .这很管用。
  • src/ProjectName.cpp中,我正在执行以下操作:#include <Utils.h>。此

运行,但不按我希望的方式工作,如上所述。

  • 而在我所做的一切#include <glm/glm.hpp>,这并不以我想要的方式工作。

编辑:我注意到当打开CLion时,它提示我在加载时清理项目。如果我单击“确定”,它会给我这些错误:

No rule to make target 'all'.
Make execution failed with exit code = 2
No compilation commands found
yduiuuwa

yduiuuwa1#

这次删除了.idea并选择了CMake项目(上次选择了Makefile)

相关问题