MinGW“对IMG_Load / IMG_Init / IMG_Quit的未定义引用”LazyFoo

时间:2015-01-08 00:30:06

标签: c++ reference g++ mingw sdl

我将使用MinGW g ++编译器(使用控制台)关闭LazyFoo的C ++ SDL2教程。我已经按照他的页面here一步一步地进行了操作。下载完他的例子后,我终于遇到了这个错误。

enter image description here

我看到很多人在线与SDL_Image斗争,但我还没有看到这个,我还没有找到任何解决方案。

  • 我已经使用适当的资产
  • 加载了include和lib文件夹
  • 我已将所有必要的.dll复制到我的编译目的地
  • 示例LazyFoo为SDL_Image和SDL本身提供了包含

(这个问题我的声音多余,但我还没有遇到适用于控制台编译的解决方案)

3 个答案:

答案 0 :(得分:2)

根据上述评论,答案似乎是:

您需要安装SDL_image的开发库。

您可以在此处下载:https://www.libsdl.org/projects/SDL_image/ (请看标题"开发库")。

您需要确保libSDL2_image.a文件所在的路径位于链接器搜索路径中。一种方法是在link命令中添加适当的-L参数。您也可以将文件放在默认的库搜索路径中。

答案 1 :(得分:0)

我遇到了同样的问题,解决方案是将SDL2main库包含在链接器参数中。

对于Dev-C ++ IDE,您可以按照以下说明操作:

Get SDL or SDL2 working correctly with Dev-C++

答案 2 :(得分:0)

我在Linux中遇到了这个问题。解决方案很简单。 添加到链接器:

-lSDL2_image -g `sdl2-config --cflags --libs`

project build otpions, switches added to Other linker options