VSCode IntelliSense не распознает библиотеку расширений SDL_image для платформы SDL - PullRequest
0 голосов
/ 13 февраля 2020

Я пытаюсь включить библиотеку расширений SDL_image в SDL.framework в моем проекте, но IntelliSense VScode продолжает подчеркивать мой #include<SDL_image.h> линиями ошибок. Он выдает следующую ошибку:

cannot open source file "SDL2/SDL.h" (dependency of "SDL_image.h")

Я успешно смог отредактировать c_cpp_properties. json includePath, чтобы IntelliSense распознал инфраструктуру SDL, но при попытке сделать то же самое с SLD_image это не удалось.

Это мои c_cpp_properties. json file:

{
    "configurations": [
        {
            "name": "Mac",
            "includePath": [
                "/Library/Frameworks/SDL2_image.framework/Headers",
                "/Library/Frameworks/SDL2.framework/Headers",
                "${workspaceFolder}/**"
            ],
            "defines": [],
            "macFrameworkPath": [
                "/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks"
            ],
            "compilerPath": "/usr/bin/clang",
            "cStandard": "c11",
            "cppStandard": "c++17",
            "intelliSenseMode": "clang-x64"
        }
    ],
    "version": 4
}

1 Ответ

0 голосов
/ 16 февраля 2020

Проблема была не в c_cpp_properties. json, а в файле SDL_image.h. Если вы используете VScode (несмотря на то, что находитесь на ма c) и столкнулись с той же проблемой с IntelliSense, измените следующие операторы include внутри SDL_image.h с этого:

#include <SDL2/SDL.h>
#include <SDL2/SDL_version.h>
#include <SDL2/begin_code.h>
#include <SDL2/close_code.h>

на следующее:

#include <SDL.h>
#include <SDL_version.h>
#include <begin_code.h>
#include <close_code.h>
...