【问题标题】:C: #include error even after placing the header file in the right pathC:即使将头文件放在正确的路径后,#include 错误
【发布时间】:2021-12-03 10:45:24
【问题描述】:

我已经下载了 SDL_mixer,它可以播放声音。即使我将.h 文件放在包含文件夹中,它仍然向我显示错误:

fatal error: SDL_stdinc.h: No such file or directory

下面是截图:

【问题讨论】:

  • 修改编译器安装是个坏主意。您应该从pacman 安装 SDL2 包,或者将下载的 SDL2 放在其他地方并在编译时指定它的路径。
  • 你使用什么编译器?它应该是来自mingw-w64-x86_64-gcc 包的/mingw64/bin/gcc,而不是来自gcc 包的/usr/bin/gcc。如果您从 MSYS2 终端编译,则必须使用 mingw64.exe 启动终端以确保 /mingw64/bin 在 PATH 中(这应该让您进入 MINGW64 environment 而不是 MSYS,如洋红色文本所示在终端提示符中)。
  • 你的 IDE 和你的编译器是不同的野兽。 IDE 中显示的错误来自您的项目设置。
  • 你有没有注意到你放在include文件夹中的文件不是报丢失的文件?那个文件在哪里?您可能应该将该文件夹添加为包含文件夹以编译选项。

标签: c windows sdl sdl-2


【解决方案1】:

感谢@HolyBlackCat,我使用了pacman 安装程序,而不是手动放置头文件...

我打开 MSYS 并输入以下命令来安装 SDL:

pacman -S mingw-w64-x86_64-pkg-config mingw-w64-x86_64-SDL2

然后我通过包含 SDL 来导入它:

#include <stdio.h>
#include <stdlib.h>

#include <SDL2\SDL_mixer.h>

int main()
{
    return 0;
}

没有导入错误。一切都很顺利!

【讨论】:

    【解决方案2】:

    我认为您应该查看 SDL_mixer.h 库。 SDL_stdinc.h 可以在里面定义。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-11-24
      • 2021-04-21
      • 1970-01-01
      • 1970-01-01
      • 2013-04-28
      • 2018-10-03
      • 1970-01-01
      相关资源
      最近更新 更多