【问题标题】:Cannot find <SDL.h>找不到 <SDL.h>
【发布时间】:2019-06-03 05:26:23
【问题描述】:

我目前正在关注 SDL2 的 LazyFoo 教程,但是我在使用此链接设置 SDL2 时遇到了麻烦 https://lazyfoo.net/tutorials/SDL/01_hello_SDL/windows/mingw/index.php。我使用 C 而不是 C++ 和 MinGW 64 位。

即使我使用包含 SDL.h 文件的 -I 标志包含目录,我的 gcc 编译器也找不到 SDL.h 头文件。我目前使用 GitBash 作为终端,使用 VS 代码作为文本编辑器。

这是我的终端命令和输出示例

/z/programming/c/lazy_foo_sdl/01_hello_SDL> gcc 01_hello_SDL.c -IC:\mingw_dev_lib\include\SDL2 -LC:\mingw_dev_lib\lib -w -Wl,-subsystem,windows -lmingw32 -lSDL2main -lSDL2 -o 01_hello_SDL
01_hello_SDL.c:4:10: fatal error: SDL.h: No such file or directory
 #include <SDL.h>
          ^~~~~~~
compilation terminated.

我真的不知道可能是什么问题,所以如果我没有提供足够的细节,请提前道歉。

【问题讨论】:

    标签: gcc mingw sdl git-bash


    【解决方案1】:

    如果您使用 bash,则必须遵循 bash 规则并转义反斜杠:

    -IC:\\mingw_dev_lib\\include\\SDL2
    

    或者根本不使用反斜杠并使用 bash-on-windows 表示法:

    -I/c/mingw_dev_lib/include/SDL2
    

    并且为了防止至少一个未来的问题 - 不要将清理函数命名为close,正如教程所建议的那样。 Justdon't.

    【讨论】:

    • 非常感谢!不敢相信我犯了这样的菜鸟错误。并感谢其他提示。
    猜你喜欢
    • 1970-01-01
    • 2018-02-10
    • 2013-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多