Distribution issues (SDL)

Started by
22 comments, last by Kambiz 14 years, 3 months ago
As the title says i'm having problems distributing my SDL game to other computers. When i try to run the .exe file on another computer, it just gives the following error: "The program has not been configured properly, try re-installing the program" This message appears despite having included all the .dll files, images and sounds that were used when i compiled the game. This is my first time trying to distribute a game to another computer, therefore i'm quite clueless on what's wrong, so all help is very appreciated.
Advertisement
Have you installed Visual C++ 2008 Redistributable Package on the other computer? (Assuming you are using MS VC++ 2008)

I avoid VC++ for that reason.
Quote:Original post by radioteeth

I avoid VC++ for that reason.


That is an infantile reason to avoid a very good compiler.
Redistributing Visual C++ Files
So, which compiler are you using? if you're using MinGW, I think the mingw runtime dll is required by SDL to be linked in your program, so, use a program like pedump to see if your executable requires mingw32.dll (or something similar, cant recall the exact name).
I am having the same problem.

What exactly do I have to include in my "package"?
I put in
•the .exe
•all sound files, images, etc.
•the SDL DLLs
What else?

Using Dependency Walker on my .exe I get:

SDL.DLL
SDL_IMAGE.DLL
SDL_TTF.DLL
SDL_MIXER.DLL

MSVCP90.DLL
MSVCR90.DLL
KERNEL32.DLL

^
|
|
I only need to include them when the user did not install the
"Microsoft Visual C++ 2008 Redistributable Package (x86)", right?
Quote:Original post by jhaeling
MSVCP90.DLL
MSVCR90.DLL
KERNEL32.DLL


Kernel32.dll is a system file, do not include that one, the MSV* dlls should be installed using the redistribution package from MS because of manifests, so if you're just making a zip rather than using an installer that runs it, you should add the redistributable installer and a note in a readme or similar asking the user to use it if the game/app wont work.
Quote:Original post by Kambiz

That is an infantile reason to avoid a very good compiler.


It is a very good compiler indeed. It is well equipped with useful features for people who will probably forget, or have never known what it was like before these features existed in compilers.

..and thus it is my feeling that it is the programmers who rely on the luxuries of big software (that they don't even pay for) that are of infantile reasoning capability.

But that's just my opinion. :)
Quote:
I avoid VC++ for that reason.

I assume your alternative compiler is GCC? On Windows, GCC links to the C++ runtime statically by default. You can do the same with MSVC, most people don't because all your dependencies must be built to be statically linked to the runtime too to avoid depending on the DLLs. For complex projects getting all of this to work can be too much effort, and it is not possible in some cases.

Quote:
It is a very good compiler indeed. It is well equipped with useful features for people who will probably forget, or have never known what it was like before these features existed in compilers.

..and thus it is my feeling that it is the programmers who rely on the luxuries of big software (that they don't even pay for) that are of infantile reasoning capability.

But that's just my opinion. :)

I can't comprehend your argument. You are saying that a modern compiler, with more features, is somehow, inherently worse than an older compiler? Yes, I long for the days before precompiled headers and incremental linking.

You think someone who uses a modern compiler that they didn't have to pay for has an infantile reasoning capability? I'm afraid you'll have to do better than that. Your "reasoning" makes no sense.

This topic is closed to new replies.

Advertisement