I am trying to learn orx, and am having trouble with the tutorials. I seem to keep getting the dreaded "libgcc_s_dw2-1.dll is missing" error. At first I thought it was an issue with my setup (fresh install), but after playing for a bit I am starting to think that the issue is with the binary library distribution for mingw. When I try running 10_StandAlone.exe from trunk/bin/mingw off of SVN I receive the same error.
Has anybody successfully gotten the tutorials to work with CodeBlocks in Windows... or even a MinGW compiler in windows? I have replaced MinGW4.4 with 4.6.
Any help is appreciated.
P.S. Using the tdm-gcc-4.6.1 to be exact.
I haven't used C::B in a long while but there's no reason why you wouldn't be able to build the tutorials with it by using the same compile&link flags found in the CodeLite project file.
That being said, you're using TDM which is using SJLJ unwinding by default whereas I compiled orx with Dwarf2 unwinding which is the new default unwinding on regular MinGW.
I wasn't aware of the SJLJ issue before your post, so thank you for pointing it out.
It's already 2:30AM here so I'm afraid I won't be able to fix that before tomorrow evening at earliest.
What I intend to do is check if Box2D is using C++ exceptions. If not I'll see if disabling exception support while buiilding it and orx will get rid of the need of any sjlj/dw2 DLLs.
If this doesn't work, I'll then try to change orx link flags so that dw2 unwinding support will be linked statically and not dynamically for easier redistribution purposes.
FYI, this issue arose with MinGW/gcc 4 and wasn't present in the version 3. Life was simpler before!
You know in all my googling I never saw anything about the difference between sjlj and dw2 for exception handling. Thanks for pointing it out. Now I at least realize why there was no libgcc_s_dw2-1.dll in my MinGW install. Tonight I will give it another go after installing minGW with dw2, so I can grab the dll.
It does sound like things were simpler in 4.3.
Thanks for getting back with me so quickly.
Let me know if you can find a work around till I can sort the issue on the SVN. If you have any other questions, don't hesitate!
If you want to rebuild orx using Code::Blocks or any other non CodeLite-way, simply use the same compiler/linker flags that are defined in the CodeLite project (those are XML files so they're easy to read).
Let me know if you have any other questions/issues.