Sorry to bother you again
No problem!
So you're using Code::Blocks 12.11 with the compiler MinGW TDM, right?
What have you been using before?
Does it means I made some kind of error while trying to update?
No everything is fine, in theory it's a bad SFML RC build, since it apparently links the runtime library statically for the dynamic builds...
Why do I need to do this now when I never needed before?
The problem is, that the MinGW TDM builds link the runtime library statically by default and only when asked shared, thus the build CMake build script (and many other build scripts) "break" with the MinGW TDM compiler. For my nightly builds I use a work around to build them properly, thus all the SFML libraries located in directly in the lib/ folder link dynamically against the runtime library and only the static libraries within the lib/static-std/ folder link statically against the runtime library.
So you now either have to decide between:
- Dynamic SFML & runtime libraries
- Static SFML and dynamic runtime libraries
- Static SFML & runtime libraries
For the first one you just link against the lib/sfml-XYZ(-d).a files
and add
-shared-libstdc++ and
-shared-libgcc to the "Other linker options" in the project settings.
For the second one you link against the lib/sfml-XYZ-s(-d).a files
and add
-shared-libstdc++ and
-shared-libgcc to the "Other linker options" in the project settings.
For the third one you only link against the lib/static-std/sfml-XYZ-s(-d).a files.
Keep in mind, that this applies only to the TDM builds of MinGW, all the other MinGW builds I've seen use the standard way of linking the runtime libraries, that is shared by default and only when specified
-static-libstdc++ and
-static-libgcc statically.
I hope that wasn't too confusing, it's just a bad decision of guy building the MinGW TDM versions...