Jump to content
  • Advertisement
Sign in to follow this  
danDemon

SDL. Problem with excutable file.

This topic is 3366 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hello. I have trouble getting my game to work outside Visual C++ 2008 (as an .exe file) When I compile and debug in the VC++ it works just fine, unfortunately when I try to run the excutable (found inside my project's folder "Debug") it just crashes on the start with the regular "Game.exe has encountered a problem and needs to close". I have put dll's inside and my VC++ is configured just like in all the tutorials I have read. Dependency Walker gives me this: "Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module." Also i get the red icon near MPR.DLL Module. Any idea what may cause the problem ?

Share this post


Link to post
Share on other sites
Advertisement
If it's in the debug directory, I trust you haven't compiled it in release mode? (The debug mode depends on the debugger.)

Share this post


Link to post
Share on other sites
check the configuration you used when compiling whether it's debug or release then go to the right folder where you'll find your exe file, then check all the linked libraries and put their dlls in this folder.
I suggest you just put the needed dlls (SDL.dll or SDL_image.dll) in the windows folder, that way you won't have to copy those files in any new project's directory.
and about Dependency Walker, I get that message too, that some dependency modules aren't found, for me it's DevMgr.dll and MSJAVA.dll but even so all my SDL apps work flawlessly.

and also another trick it's that your artwork may be linked to relatively, if you load an image for example with a relative path, that path starts from the projects folder when running from within the IDE, but when running the executable it starts from the path of the executable.

here's the default directory tree of a VC solution:

Solution-Name (Path of the solution)
|
|--Debug (where you debug exe is located)
|
|--Release (where you release exe is located)
|
|--Project-Name (Path of the project)
|--|
|--|--Debug (.obj , .pdb and manifest files for debug config)
|--|
|--|--Release (.obj , .pdb and manifest files for release config)

I hope this helped..

Share this post


Link to post
Share on other sites
If it works from the IDE but not otherwise, the most likely cause is the wrong current working directory. Does your app try to load files using relative paths? Does it crash if it can't find those files?

I'm not convinced that the problem is that it's missing SDL.dll. Usually, if you forget a DLL, you get a pretty specific error message. Something like, "The application has failed to start because SDL.dll was not found".

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!