2012-08-07 76 views
0

我正在寫一個簡單的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

使用類似[Dependency Walker](http://www.dependencywalker.com/)來確定您的應用需要哪些DLL文件。 – 2012-08-07 23:13:25

+0

這是一個非常有用的程序,但顯然這不是我的問題。所以你確實通過縮小了我遺漏了一個dll的可能性讓我更接近了。 – 2012-08-07 23:37:19

+0

我希望你會把這個作爲答案,我會有+1它 – 2012-08-08 00:41:58

回答

2

解決這類問題的一個好方法是使用Dependency Walker。這將向您顯示可執行文件的所有依賴關係以及依賴關係的依賴關係。

如果您在目標平臺上運行它,它將突出顯示所需的但不可用的DLL,從而更容易看出爲什麼您的可執行文件無法運行。