Обновление includePath: файл заголовка mpi.h не может быть найден в Visual Studio Code под Windows 10

#visual-studio-code #compiler-errors #mpi #include-path #mpich

#visual-studio-code #ошибки компилятора #mpi #include-path #mpich

Вопрос:

Этот вопрос задавался несколько раз, поэтому я приношу извинения за то, что задаю этот вопрос снова. Потратив время на поиск в Google в течение нескольких часов, я, наконец, сдался.

Как уже было сказано в названии, я пытаюсь настроить структуру MPI с помощью Visual Studio Code под Windows 10. Я скачал MPICH для Windows отсюда и установил их, следуя инструкциям. Я только что изменил стандартный путь установки с C на D, что не должно иметь большого значения.

Код Visual Studio и компилятор MinGW для C / C уже установлены и обновлены.

Когда я запускаю программу MPI в коде Visual Studio, файл заголовка mpi.h найден неправильно. Я получаю следующее сообщение об ошибке:

 #include errors detected. Please update your includePath. 
Squiggles are disabled for this translation unit (C:xxxcode.cc) C/C  (1696)
cannot open source file "sal.h" (dependency of "mpi.h")C/C  (1696)
 

Чтобы обновить мой includePath, как описано в сообщении об ошибке, я нажал на лампочку:

Ошибка включения

Я открыл c_cpp_properties.файл json для изменения раздела includePath:

 {
    "configurations": [
        {
            "name": "Win32",
            "includePath": [
                "${workspaceFolder}/**",
                "D:/Program Files (x86)/Microsoft SDKs/MPI/Include"
            ],
            "defines": [
                "_DEBUG",
                "UNICODE",
                "_UNICODE"
            ],
            "compilerPath": "C:/MinGW/bin/gcc.exe",
            "cStandard": "c11",
            "cppStandard": "c  17",
            "intelliSenseMode": "gcc-x64"
        }
    ],
    "version": 4
}
 

Я добавил новую строку D:/Program Files (x86)/Microsoft SDKs/MPI/Include в раздел includePath. Это именно тот путь, по которому включены файлы заголовков. Но по какой-то причине код Visual Studio по-прежнему показывает мне ошибку включения сверху. Почему это так? Для этой проблемы нет «общего» решения.

Системные переменные среды должны быть в порядке. Я также смог скомпилировать / запустить программы OpenMP.

Мне действительно нужна ваша помощь.

Заранее спасибо!