Comment 10 for bug 1025014

Revision history for this message
Nasenbaer (nasenbaer) wrote :

Well so the problem (or at least the trigger for the problem) must lie somewhere inside the patches of debian.

After taking a closer look at the changes they made, I did not find any change that could have an influence on the code that failes for you.

However, they change the compiler flags with they "dbg_symbols" patch:

Index: widelands-17~rc1/CMakeLists.txt
===================================================================
--- widelands-17~rc1.orig/CMakeLists.txt 2012-04-02 10:34:26.000000000 +0200
+++ widelands-17~rc1/CMakeLists.txt 2012-04-11 14:52:24.000000000 +0200
@@ -221,10 +221,10 @@
     IF (WLBUILD_COMPILERVERSION_REP STREQUAL "4.5.1" OR WLBUILD_COMPILERVERSION_REP STREQUAL "4.5.2")
         message("Detected gcc ${WLBUILD_COMPILERVERSION_REP}")
         message("Suffering from gcc bug, disabling -O3")
- set (CMAKE_CXX_FLAGS_RELEASE "-O2 -DNDEBUG" CACHE STRING "Set by widelands CMakeLists.txt" FORCE)
+ set (CMAKE_CXX_FLAGS_RELEASE "-g -O2 -DNDEBUG" CACHE STRING "Set by widelands CMakeLists.txt" FORCE)
     ELSE (WLBUILD_COMPILERVERSION_REP STREQUAL "4.5.1" OR WLBUILD_COMPILERVERSION_REP STREQUAL "4.5.2")
         #This line is the default and should be preserved.
- set (CMAKE_CXX_FLAGS_RELEASE "-O3 -DNDEBUG" CACHE STRING "Set by widelands CMakeLists.txt" FORCE)
+ set (CMAKE_CXX_FLAGS_RELEASE "-g -O3 -DNDEBUG" CACHE STRING "Set by widelands CMakeLists.txt" FORCE)
     ENDIF (WLBUILD_COMPILERVERSION_REP STREQUAL "4.5.1" OR WLBUILD_COMPILERVERSION_REP STREQUAL "4.5.2")
 ENDIF (${CMAKE_COMPILER_IS_GNUCXX})

I have to admit, I have no idea, if this might be the problem, but as we already faced some strange problems concerning gcc and optimization, maybe the additional flag mixes something up?

By the way: did you all (Jürgen, Jens, Hans Joachim) use a release build for testing?
Jürgen, the recompiled build17 version with the patches from Debian - have you build it in debug or release mode?

Maybe this bug is only reproduceable in Widelands Release builds and due to some new optimization mix ups of gcc