使用 MinGW/GCC 对 Windows 中 SDL2 设置的常见问题进行故障排除
简介:
如果您在程序中使用 SDL2 可能会很困难不熟悉设置流程。本文旨在提供在 Windows 中使用 SDL2 时遇到的常见问题的全面指南,特别是使用 MinGW/GCC 编译时。
常见错误:
- SDL.h:没有这样的文件或目录(当编译)
- 各种 SDL_main 问题(编译或链接时)
- 对其他函数的未定义引用(链接时)
- DLL 问题(运行时程序)
序言:
-
避免盲目建议:不要遵循 #define 的建议SDL_MAIN_HANDLED 或 #undef main 而不了解它们
-
首先从控制台编译:通过直接从命令行编译排除任何 IDE 配置问题。
-
下载正确的 SDL2 文件: 从 SDL2 官方获取 SDL2-devel-2.0.x-mingw.tar.gz 存档网站。
解决特定错误:
SDL.h:没有这样的文件或目录
- 将 -Ipath 添加到编译器标志中,其中 path 是包含 SDL.h 的目录(在提取的SDL2 存档)。
各种 SDL_main 问题
- 确保您有一个带有签名 int main(int, char **) 的 main 函数。
- 删除 #define SDL_MAIN_HANDLED 和 #undef main if
对各种函数的未定义引用
-
SDL_...: 在 此命令:-lmingw32 -lSDL2main -lSDL2.
- 仅限 WinMain: 与上面相同,确保使用正确的链接器标志。
- 特定函数(SDL_main 除外):验证您使用的 SDL .a 文件是否适合您的编译器架构(32 位或64 位)。
DLL 问题
查阅文章“如何在 MinGW 中调试 DLL 问题?”-
其他问题:
- 程序打开控制台窗口:将 -mwindows 添加到链接器标志。
- 错误“SDL_VideoMode”不是声明: SDL_VideoMode 不是 SDL2 的一部分。请改用 SDL2 特定的函数。
- 默认文件图标: 创建 .ico 格式的自定义图标,将其与 .rc 文件和 icon.o 文件一起包含在项目中,并指定链接时的它们。
以上是如何解决 Windows 上 MinGW/GCC 的常见 SDL2 设置问题?的详细内容。更多信息请关注PHP中文网其他相关文章!