[PyQt] Problem with PyQt linking against static builds of Qt on
Windows using MinGW
Marvin Greenberg (P)
public.marvin at gmail.com
Wed Aug 1 22:28:09 BST 2007
I've built qt 4.3 statically on windows using MinGW. Then (after
messing around with PyQt 4.2 for a while) found and downloaded the
updated PyQt 4.3. What I want is dynamically loadable PyQt python
modules, that simply include the static qt libraries. configure.py
realizes I have statically linked qt and tells me that I either have to
do --static or --consolidated. When I use --static the build runs to
completion but the QtCore.pyd (for example) is only 5k and doesn't
define any symbols. When I use -g, the build fails while trying to
create pylupdate4.exe with thousands of unresolved symbols.
Is linking against static libraries using minGw not particularly supported?
Here's my call to configure.py (more or less):
c:/python25/python configure.py -w -c -p win32-g++ -g
Here's the failing link line:
g++ -enable-stdcall-fixup -Wl,-enable-auto-import
-Wl,-enable-runtime-pseudo-reloc -Wl,-subsystem,console -Wl,-s -o
pylupdate4.exe fetchtr.o merge.o numberh.o sametexth.o main.o
metatranslator.o proparser.o translator.o simtexth.o moc_translator.o
-Lc:/tena_home/TENA/qt-v4.3/lib -lQtCore -lkernel32 -luser32 -lshell32
-luuid -lole32 -ladvapi32 -lws2_32 -lQtGui -lgdi32 -lcomdlg32 -loleaut32
-limm32 -lwinmm -lwinspool -lws2_32 -lole32 -luuid -luser32 -ladvapi32
-lQtXml
With some 2000 errors like:
c:/tena_home/TENA/qt-v4.3/lib/libQtGui.a(qtextedit.o):qtextedit.cpp:(.text$_ZN16QTextEditPrivateD0Ev[QTextEditPrivate::~QTextEditPrivate()]+0x87):
undefined reference to `QBasicTimer::stop()'
c:/tena_home/TENA/qt-v4.3/lib/libQtGui.a(qtextedit.o):qtextedit.cpp:(.text$_ZN16QTextEditPrivateD0Ev[QTextEditPrivate::~QTextEditPrivate()]+0x135):
undefined reference to `QBasicTimer::stop()'
If i reorder the libraries to -lQtXml -lQtGui -lQtCore, I get down to
about 200 unresolved references, most to things like __imp____iob,
__filbuf, __errno, __imp__pctype
Thanks,
Marvin
More information about the PyQt
mailing list