编译发布

时间:2012-08-07 23:11:43

标签: c++ dll compilation release sdl

我正在编写一个简单的pong应用程序,虽然它还没有完成,但我还是会撒谎以便能够弄清楚如何编译它以便发布。我没有错误,我链接到SDL,SDLmain,SDL_image,SDL_ttf,但当其他计算机上的人试图运行它(调试和发布)时,它关闭就像它丢失文件一样。我把SDL.dll,SDL_image.dll,SDL-ttf.dll全部放在那里以及我在程序中使用的图像,它在我的计算机上工作正常,所以说这是我丢失的文件...但是会是什么?

编辑:

最后30分钟后我发现它:当包含SDL_image.dll时,你还必须包含SDL_image.dll的依赖项:zlib1.dll,libjjpeg-x.dll,libpng..etc

1 个答案:

答案 0 :(得分:2)

解决此类问题(如果与DLL相关)的一种好方法是使用Dependency Walker。这将显示可执行文件的所有依赖项以及依赖项的依赖项。

如果您在目标平台上运行它,它将突出显示所需但不可用的DLL,从而更容易理解您的可执行文件无法运行的原因。