Issue running program on different PC

Hi!
I reopened one of my old projects which uses the mingw32, working on CodeBlocks. I can easily run it from the IDE itself, but when trying to do it from the exe, i get this error - "libgcc_s_dw2-1 missing", although it isn't, it's located in mingws folder. Also, i noticed the the exe had shrunk 2 times in size, so I guess I'm not packaging all the required files in the exe? If so, how can I do it? COuldn't figure this out on my own, thanks!
It looks like you linked your program with additional dynamic linked library dependencies. Unless you have the required .dll files in the same directory as your .exe, it's not going to work.

Also, i noticed the the exe had shrunk 2 times in size, so I guess I'm not packaging all the required files in the exe?


What exactly do you mean? You mean, the difference between a debug build and a release build?
Your program's exe file is only part of the code you need to give your friend.

For any MinGW program, you also need to supply the "libgcc_s_dw2-1.dll" (or the sjlj one, whichever you find in the C:\MinGW\bin folder), as well as any other dependencies.

You can find out what DLLs your program needs to run using a program like Dependency Walker (http://www.dependencywalker.com/).

Anything in C:\WINDOWS\system32 or the like you can ignore. Anything else you need to put in the same directory as your program's exe and zip it all up together to give away.

Good luck!
Thank you about the dependency walker, I'm sure it will be useful ;)
The size difference is is debug builds. Previously I didn't have to supply any of those other dll's, but now I have to? Seems like I have done something wrong setting up my project, for example, It was a MingW program and didn't say it needed those dll's and was double in size.. Or maybe i wasn't using mingw, but I was because I'm using SDL.

Needed two add two dll's, then it runs fine. Isn't there a workaround, so that i don't have to add extra dll's?
Last edited on
Topic archived. No new replies allowed.