Hi,

A regression seems to have slipped in the latest trunk (between 20120705
and 20120709). One of the testcases which we're using to test the Fedora
mingw-w64 toolchain now fails to build with the latest trunk. It is a
testcase which tests static linking to the Qt library for the win32
target:

$ cat qt_test_static.pro
TARGET = qt_test_static
TEMPLATE = app
SOURCES += main.cpp
CONFIG += static

$ cat main.cpp
#include <QCoreApplication>

int main(int argc, char *argv[])
{
    QCoreApplication(argc, argv);

    return 0;
}

$ mingw32-qmake-qt4 qt_test_static.pro
$ make
make -f Makefile.Release
make[1]: Entering directory
`/home/erik/fedora_mingw_testsuite/testcases/qt/qmake'
i686-w64-mingw32-g++ -c -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2
--param=ssp-buffer-size=4 -fno-keep-inline-dllexport -O2 -frtti
-fexceptions -mthreads -Wall -DUNICODE -DQT_LARGEFILE_SUPPORT
-DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_THREAD_SUPPORT
-I'/usr/i686-w64-mingw32/sys-root/mingw/include/QtCore'
-I'/usr/i686-w64-mingw32/sys-root/mingw/include/QtGui'
-I'/usr/i686-w64-mingw32/sys-root/mingw/include'
-I'/usr/i686-w64-mingw32/sys-root/mingw/include/ActiveQt' -I'release'
-I'/usr/i686-w64-mingw32/sys-root/mingw/share/qt4/mkspecs/win32-g
++-cross' -o release/main.o main.cpp
i686-w64-mingw32-g++ -static -Wl,-s -mthreads -Wl,-subsystem,windows -o
release/qt_test_static.exe release/main.o
-L'/usr/i686-w64-mingw32/sys-root/mingw/lib' -lmingw32 -lqtmain4
-lQtGui4 -lgdi32 -lcomdlg32 -loleaut32 -limm32 -lwinmm -lwinspool
-lws2_32 -lole32 -luuid -luser32 -ladvapi32 -ljpeg -ltiff -lpng
-lQtCore4 -lole32 -luuid -lws2_32 -ladvapi32 -lshell32 -luser32
-lkernel32 -lz
/usr/i686-w64-mingw32/sys-root/mingw/lib/libmingw32.a(lib32_libmingw32_a-tlsmthread.o):(.text+0x1):
 undefined reference to `__mingw_usemthread_dll'
/usr/i686-w64-mingw32/sys-root/mingw/lib/libmingw32.a(lib32_libmingw32_a-tlsmthread.o):(.text+0xe):
 undefined reference to `__mingw_gMTRemoveKeyDtor'
/usr/i686-w64-mingw32/sys-root/mingw/lib/libmingw32.a(lib32_libmingw32_a-tlsmthread.o):(.text+0x3e):
 undefined reference to `__mingw_usemthread_dll'
/usr/i686-w64-mingw32/sys-root/mingw/lib/libmingw32.a(lib32_libmingw32_a-tlsmthread.o):(.text+0x48):
 undefined reference to `__mingw_gMTKeyDtor'
collect2: error: ld returned 1 exit status
make[1]: *** [release/qt_test_static.exe] Error 1
make[1]: Leaving directory
`/home/erik/fedora_mingw_testsuite/testcases/qt/qmake'
make: *** [release] Error 2


This specific testcase works fine for shared libraries (win32+win64) and
for static libraries for the win64 target.

I suspect commit
http://mingw-w64.svn.sourceforge.net/viewvc/mingw-w64?view=revision&revision=5169
 to be the culprit.

Is this really a regression or do you think it would be sufficient to
rebuild the Qt library?

Regards,

Erik van Pienbroek
Fedora MinGW SIG



------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to