Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何在CMake/CLion中设置子目录include?_C++_Cmake_Clion - Fatal编程技术网

C++ 如何在CMake/CLion中设置子目录include?

C++ 如何在CMake/CLion中设置子目录include?,c++,cmake,clion,C++,Cmake,Clion,这类似于,但在遵循公认的答案后,我没有取得任何进展 我正在尝试在CLion中编辑一个大型OSS项目。它不使用CMake,因此CLion生成了一个CMakeLists.txt文件。打开源文件时,无法解析使用子目录的包含项: 此屏幕截图所来自的文件与导入的文件位于同一“opto”子目录中。如果我将导入内容更改为不包含“opto”,它可以正常工作,但我不能这样做,因为这是一个重大项目,我只想编写一个小补丁: $ find . -type f | wc -l 10532 我已将要导入的文件直接添加到

这类似于,但在遵循公认的答案后,我没有取得任何进展

我正在尝试在CLion中编辑一个大型OSS项目。它不使用CMake,因此CLion生成了一个CMakeLists.txt文件。打开源文件时,无法解析使用子目录的包含项:

此屏幕截图所来自的文件与导入的文件位于同一“opto”子目录中。如果我将导入内容更改为不包含“opto”,它可以正常工作,但我不能这样做,因为这是一个重大项目,我只想编写一个小补丁:

$ find . -type f | wc -l
10532
我已将要导入的文件直接添加到
add_executable
,如另一个答案所示:

# CMakeLists.txt
add_executable(hotspot
    [lots of other files]
    src/share/vm/opto/compile.hpp
)
我已经将
opto
目录添加到
include\u目录
,如对另一个问题的第二个答案所述:

# CMakeLists.txt
include_directories(
    src
    src/share/vm/opto)
也不是通过
opto
子目录帮助CLion解析导入


我遗漏了什么?

使用包含目录()必须这样做,但您必须分别提到每个子目录。下面我以同样的方式包括了两个目录,其中一个是sub_目录

CLion已成功检测到头文件


>由于这是一个重大项目,我只想编写一个小补丁,那么您将更幸运地使用文本编辑器而不是IDE。因为它是一个大项目,所以不能使用一个简单的列表文件,因为它是一个小补丁,所以可以使用文本编辑器。所以我不明白,为什么不呢,我也有同样的问题。你找到解决办法了吗?没有,我放弃了:(你找到解决办法了吗?