首页 > 解决方案 > 如何向 CMakeSettings.json 添加其他包含路径以使 IntelliSense 工作?

问题描述

我正在使用 Visual Studio 2019 16.7.2 打开一个 CMake 项目,该项目使用位于绝对C:\dependencies路径内的头文件和库。但是,该路径从未在 CMakeLists.txt 中直接引用,并且仅在项目附带的单独构建脚本中使用并成功执行。这意味着在 VS 中处理项目时,IntelliSense 无法识别包含的标头C:\dependencies\lib[A,B,...],例如#include <libA/header.h>,无法找到自动完成和类似功能的标头。

我不应该直接修改 CMakeLists.txt。相反,我想在未版本化的CMakeSettings.jsonC:\dependencies文件中从基本路径引用标头,这有望解决 IntelliSense 问题。这是我尝试过的,但没有奏效:

 "variables": [
 {
        "name": "include_directories",
        "value": "C:/dependencies/libA/include C:/dependencies/libB/include"
        "type": "PATH"
 }]
"variables": [
{
      "name": "CMAKE_CXX_FLAGS",
      "value": "-I C:/dependencies/libA/include C:/dependencies/libB/include"
}]

路径字符串本身不是问题,例如"C:\dependencies\libA\include"包含libA带有引用标题的目录。

关于如何让 IntelliSense 成功识别标头的任何想法?

标签: c++visual-studiocmakevisual-studio-2019intellisense

解决方案


推荐阅读