如果您使用 CMake,VSCode 有 CMake 插件来帮助您构建项目。所以你不需要修改settings.json。只需使用:
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/include")
或者,如果没有其他模块使用该文件夹中的头文件,您可以使用类似以下内容的内容:
target_include_directories(MyHelper, "${CMAKE_CURRENT_SOURCE_DIR}/include")
如果您只需要项目构建成功。这就是整个故事。
在这种情况下,#include 语句下面会出现一些绿色的小锯齿线,会伤害您的眼睛。您需要生成c_cpp_properties.json。它与帮助编译器构建代码无关,而是帮助 VSCode 智能感知认识到库和头文件的存在。同样,您可以通过在 CMakeLists.txt 中添加 CMake 选项来利用 CMake:
add_definitions(-DCMAKE_EXPORT_COMPILE_COMMANDS=ON)
CMake将生成一个文件compile_commands.json
在你的构建目录下。 VSCode 能够解析 Json 文件并根据该文件中的内容找到包含路径。所以你需要做的就是让 VSCode 知道 Json 文件在哪里。您可以通过在 c_cpp_properties.json 中添加以下行来做到这一点:
"configurations": [
{
"name": "Mac",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
...
}],
重新构建项目将使 VSCode 智能感知找到所有必要的路径。
[环境]
乌班图:16.04.3
VS代码:1.23.1
VSCode 插件:C/C++ 0.17.0、CMAKE 0.0.17、CMakeTools 0.11.1