On Sat, Jun 07, 2014 at 01:57:50PM -0700, Thiago Macieira wrote: > > The Microsoft compiler has a separate switch for whether you're building > against the static runtime or the dynamic runtime, and whether you're using > the debug version or the release version (-MT, -MTd, -MD, -MDd). Because of > the debug/release split of Visual Studio, Qt on Windows inherited the split > and hence has two DLLs for each module. > > If you set CONFIG of "debug", it will add a "d" to the DLL name. Since Fedora > and OpenSUSE only have release DLLs, you need to use a CONFIG of "release" > but > just compile Subsurface code with -O0 -g (the QMAKE_C...FLAGS_DEBUG variables > contain the -g).
They do. > In time: on Mac, Qt also has a similar split. Qt can build in debug-and- > release mode. But, unlike Windows, you always link to just the plain library > name. To trigger the loading of the debug libraries, you have to set > DYLD_IMAGE_SUFFIX=_debug in the environment. > > Qt 4.0 and 4.1 had that split on Linux as well, but it was removed by 4.2 > because it was a headache for everyone. It would be nice if ld-linux.so had a > similar environment variable as Mac's dyld. > > > I reverted Linus' patch, added these two lines, rebuilt the binary (after > > making clean) and installed on Windows. Same problem, same crash report > > devoid any information whatsoever. > > > > So I'm missing something, right? :-) > > Well, first thing is to check whether the flags applied. The Makefile should > have > them as the last thing in CFLAGS and CXXFLAGS before $(DEFINES). Yep. And then I assume I need to run the binary under some debugger on the Windows side (which of course I don't have installed)... /D _______________________________________________ subsurface mailing list [email protected] http://lists.hohndel.org/cgi-bin/mailman/listinfo/subsurface
