VSCode и c ++ compile_commands.json: ".h файл не найден", но может открыть его - PullRequest
0 голосов
/ 05 ноября 2019

В рабочей среде я вынужден использовать compile_commands.json, который генерируется clang для предоставления Intellisense необходимой информации. У меня есть проект, который на самом деле успешно компилируется из командной строки.

Тем не менее intellisense не работает, поскольку файлы заголовков помечены: «Файл FILE_PATH.h не найден».

Однако щелкните правой кнопкой мыши и «goк определению "открывает заголовочный файл без каких-либо проблем. Поэтому Studio Code, очевидно, знает, где находится файл.

Мой файл c_cpp_properties.json выглядит следующим образом (и пути указаны правильно):

{
    "configurations": [
        {
            "name": "MyConfig",
            "includePath": [
                "${workspaceFolder}/**"
            ],
            "defines": [],
            "compilerPath": "/usr/lib/ccache/clang++",
            "cStandard": "c11",
            "cppStandard": "c++17",
            "intelliSenseMode": "clang-x64",
            "compileCommands": "/CORRECT_PATH_TO/compile_commands.json"
        }
    ],
    "version": 4
}

Какие могут быть возможные проблемы?

Я попробовал подсказки, такие как переделка базы данных intellisense, но безуспешно: https://code.visualstudio.com/docs/cpp/faq-cpp#_how-do-i-recreate-the-intellisense-database

Это нормально, что compile_commands.json упоминает только файлы .cpp, а не файлы .h? Может ли это быть как-то связано с «Невозможно наблюдать за изменениями файлов в этом большом рабочем пространстве». уведомление, которое я получаю (и которое я должен был игнорировать до сих пор)?

Огромное спасибо заранее!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...