我正在关注有关如何使用C ++进行SDL2编程的教程。我在窗户上。我的电脑是64位。出于兼容性原因,我正在使用32位库,因为我正在遵循一个教程[已指导使用32位版本]。
我尝试使用编译器调用SDL图像库,并出现以下错误:
“ SDL_image无法初始化!SDL_image错误:加载libpng16-16.dll失败:找不到指定的过程”
(我把我能找到的所有Dll都放到MySysWow64中,我从来都不擅长链接编译器,所以我可能做错了[我正在使用代码块])
它还会产生以下弹出窗口:
“ SDL教程:SDL2_TEST1.exe-找不到入口点
在动态链接库C:\ windows \ SYSTEM32 \ libpng16-16.dll中找不到过程入口点inflateValidate”
本教程指示我将SDL映像的DLL放入MySysWow64目录中。我以为我做到了。可能是什么原因造成的,我该如何解决以进行修复?
PS:我使用的是Windows10,不确定是否相关,但是既然如此,这就是为什么我将其包括在内。我认为这是一个好主意,如果不是,我对此非常灵活。我只想问最好的问题
答案 0 :(得分:0)
将zlib1.dll(版本1.2.8)从SDL2_ttf-devel-2.0.14解压缩到我的编译器的bin文件夹后,SDL遇到相同的错误,就像解压缩到MySysWow64文件夹中一样,我不太愿意这样做做。搜索错误“过程入口点inflateValidate”将产生许多zlib1.dll冲突结果。 SDL2_image-devel-2.0.4中的zlib1.dll(1.2.11)在1.2.8版本生成您报告的错误的地方起作用。删除zlib1.dll并找到较新的版本,还要考虑PATH中可能已存在另一个冲突的zlib1.dll,这会导致错误,请在PATH中检查DLL的其他副本。