[sorry if this gets to you twice, I sent it from the wrong e-mail account the first time]
Hello list, Recently a bug has been found in the dllwrap tool for MINGW that causes relocation sections inside a DLL to be duplicated. When the DLL has to be relocated, addresses are fixed up twice causing crashes that are hard to track down. See http://sourceforge.net/mailarchive/forum.php?thread_name=1187200750.8500.38.camel%40devit.rsaisp.com&forum_name=mingw-users for reference I noticed that in the downloaded source for xerces-c 2.8.0 there is a file inside of src/xercesc called Makefile.incl that includes the following section starting at line 461: #=============== MINGW SPECIFIC OPTIONS ========================= ifeq (${PLATFORM}, MINGW) PLATFORM_COMPILE_OPTIONS = -D${PLATFORM} -fexceptions -D__GNUWIN32__ -DWIN32 -D_WINDOWS -DNDEBUG -DPLATFORM_WIN32 ifeq (${LIBTYPE},shared) MAKE_SHARED = dllwrap --export-all-symbols --driver-name ${CXX} ${LDFLAGS} MAKE_SHARED_C = ${CC} -D${PLATFORM} ${LDFLAGS} else PLATFORM_COMPILE_OPTIONS += -DXML_LIBRARY # switch off import/export endif ALLLIBS = ${LIBS} SHLIBSUFFIX=.dll endif The line that reads: MAKE_SHARED = dllwrap --export-all-symbols --driver-name ${CXX} ${LDFLAGS} can be changed to: MAKE_SHARED = ${CXX} -shared ${LDFLAGS} To avoid the bug in dllwrap. I did notice that when I downloaded trunk from CVS that I could not find a reference to dllwrap anywhere, nor Makefile.incl. Maybe this has already been addressed? Thank you for your time, - Dave
