[Development] Rebuilding Qt5 after adding -prefix fails to link due to missing zlib options

Jan Kundrát jkt at flaska.net
Thu Apr 11 19:46:05 CEST 2013


Hi, I've succesfully built Qt5 (release branch) on a Linux system with gcc 4.6. However, I forgot to add the -prefix option to configure, so I decided to do it once again (full command line `./configure -developer-build -opensource -no-gtkstyle -confirm-license -prefix /opt/qt5/`). However, now the build dies almost immediately after running `make`:

jkt at svist ~/work/prog/qt5[release*] $ time make -j4
cd qtbase/ && ( test -e Makefile || /home/jkt/work/prog/qt5/qtbase/bin/qmake /home/jkt/work/prog/qt5/qtbase/qtbase.pro -o Makefile ) && make -f Makefile 
make[1]: Entering directory `/home/jkt/work/prog/qt5/qtbase'
cd src/ && ( test -e Makefile || /home/jkt/work/prog/qt5/qtbase/bin/qmake /home/jkt/work/prog/qt5/qtbase/src/src.pro -o Makefile ) && make -f Makefile 
make[2]: Entering directory `/home/jkt/work/prog/qt5/qtbase/src'
cd tools/ && ( test -e Makefile || /home/jkt/work/prog/qt5/qtbase/bin/qmake /home/jkt/work/prog/qt5/qtbase/src/tools/tools.pro -o Makefile ) && make -f Makefile 
make[3]: Entering directory `/home/jkt/work/prog/qt5/qtbase/src/tools'
cd bootstrap/ && ( test -e Makefile || /home/jkt/work/prog/qt5/qtbase/bin/qmake /home/jkt/work/prog/qt5/qtbase/src/tools/bootstrap/bootstrap.pro -o Makefile ) && make -f Makefile 
make[4]: Entering directory `/home/jkt/work/prog/qt5/qtbase/src/tools/bootstrap'
g++ -c -m64 -pipe -ffunction-sections -O2 -fPIC -std=c++0x -fvisibility=hidden -fvisibility-inlines-hidden -fno-exceptions -Wall -W -D_REENTRANT -DQT_BOOTSTRAPPED -DQT_LITE_UNICODE -DQT_NO_CAST_TO_ASCII -DQT_NO_CODECS -DQT_NO_DATASTREAM -DQT_NO_LIBRARY -DQT_NO_QOBJECT -DQT_NO_SYSTEMLOCALE -DQT_NO_THREAD -DQT_NO_UNICODETABLES -DQT_NO_USING_NAMESPACE -DQT_NO_DEPRECATED -DQT_NO_TRANSLATION -DQT_QMAKE_LOCATION=\"/home/jkt/work/prog/qt5/qtbase/bin/qmake\" -DQT_NO_CAST_FROM_ASCII -DQT_BUILD_BOOTSTRAP_LIB -DQT_BUILDING_QT -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DQT_USE_QSTRINGBUILDER -DQT_DEPRECATED_WARNINGS -DQT_DISABLE_DEPRECATED_BEFORE=0x050000 -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -I../../../mkspecs/linux-g++-64 -I. -I../../../include -I../../../include/QtCore -I../../../include/QtCore/5.0.2 -I../../../include/QtCore/5.0.2/QtCore -I../../../include/QtXml -I/home/jkt/work/prog/qt5/qtbase/include/QtXml/5.0.2 -I/home/jkt/work/prog/qt5/qtbase/include/QtXml/5.0.2/QtXml -I../../corelib/global -o .obj/debug-shared/qlibraryinfo.o ../../corelib/global/qlibraryinfo.cpp
rm -f libQt5Bootstrap.a
ar cqs libQt5Bootstrap.a .obj/debug-shared/qlatincodec.o .obj/debug-shared/qtextcodec.o .obj/debug-shared/qutfcodec.o .obj/debug-shared/qglobal.o .obj/debug-shared/qlibraryinfo.o .obj/debug-shared/qlogging.o .obj/debug-shared/qmalloc.o .obj/debug-shared/qnumeric.o .obj/debug-shared/qabstractfileengine.o .obj/debug-shared/qbuffer.o .obj/debug-shared/qdatastream.o .obj/debug-shared/qdir.o .obj/debug-shared/qdiriterator.o .obj/debug-shared/qfile.o .obj/debug-shared/qfileinfo.o .obj/debug-shared/qfilesystementry.o .obj/debug-shared/qfilesystemengine.o .obj/debug-shared/qfsfileengine.o .obj/debug-shared/qfsfileengine_iterator.o .obj/debug-shared/qiodevice.o .obj/debug-shared/qfiledevice.o .obj/debug-shared/qsettings.o .obj/debug-shared/qtemporaryfile.o .obj/debug-shared/qtextstream.o .obj/debug-shared/qcoreglobaldata.o .obj/debug-shared/qmetatype.o .obj/debug-shared/qvariant.o .obj/debug-shared/qsystemerror.o .obj/debug-shared/quuid.o .obj/debug-shared/qbitarray.o .obj/debug-shared/qbytearray.o .obj/debug-shared/qarraydata.o .obj/debug-shared/qbytearraymatcher.o .obj/debug-shared/qdatetime.o .obj/debug-shared/qhash.o .obj/debug-shared/qlist.o .obj/debug-shared/qlinkedlist.o .obj/debug-shared/qlocale.o .obj/debug-shared/qlocale_tools.o .obj/debug-shared/qmap.o .obj/debug-shared/qregexp.o .obj/debug-shared/qpoint.o .obj/debug-shared/qrect.o .obj/debug-shared/qsize.o .obj/debug-shared/qline.o .obj/debug-shared/qstring.o .obj/debug-shared/qstringlist.o .obj/debug-shared/qvector.o .obj/debug-shared/qvsnprintf.o .obj/debug-shared/qxmlutils.o .obj/debug-shared/qxmlstream.o .obj/debug-shared/qjson.o .obj/debug-shared/qjsondocument.o .obj/debug-shared/qjsonobject.o .obj/debug-shared/qjsonarray.o .obj/debug-shared/qjsonvalue.o .obj/debug-shared/qjsonparser.o .obj/debug-shared/qjsonwriter.o .obj/debug-shared/qdom.o .obj/debug-shared/qxml.o .obj/debug-shared/qfilesystemengine_unix.o .obj/debug-shared/qfilesystemiterator_unix.o .obj/debug-shared/qfsfileengine_unix.o
rm -f ../../../lib/libQt5Bootstrap.a
mv -f libQt5Bootstrap.a ../../../lib/
make[4]: Leaving directory `/home/jkt/work/prog/qt5/qtbase/src/tools/bootstrap'
cd moc/ && ( test -e Makefile || /home/jkt/work/prog/qt5/qtbase/bin/qmake /home/jkt/work/prog/qt5/qtbase/src/tools/moc/moc.pro -o Makefile ) && make -f Makefile 
cd qdoc/ && ( test -e Makefile || /home/jkt/work/prog/qt5/qtbase/bin/qmake /home/jkt/work/prog/qt5/qtbase/src/tools/qdoc/qdoc.pro -o Makefile ) && make -f Makefile 
cd rcc/ && ( test -e Makefile || /home/jkt/work/prog/qt5/qtbase/bin/qmake /home/jkt/work/prog/qt5/qtbase/src/tools/rcc/rcc.pro -o Makefile ) && make -f Makefile 
cd qdbusxml2cpp/ && ( test -e Makefile || /home/jkt/work/prog/qt5/qtbase/bin/qmake /home/jkt/work/prog/qt5/qtbase/src/tools/qdbusxml2cpp/qdbusxml2cpp.pro -o Makefile ) && make -f Makefile 
make[4]: Entering directory `/home/jkt/work/prog/qt5/qtbase/src/tools/rcc'
g++ -m64 -Wl,-O1 -o ../../../bin/rcc .obj/debug-shared/rcc.o .obj/debug-shared/main.o   -L/home/jkt/work/prog/qt5/qtbase/lib -lQt5Bootstrap -lpthread 
make[4]: Entering directory `/home/jkt/work/prog/qt5/qtbase/src/tools/moc'
g++ -c -m64 -pipe -O2 -fno-exceptions -Wall -W -D_REENTRANT -fPIE -DQT_MOC -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_FROM_BYTEARRAY -DQT_NO_COMPRESS -DQT_NO_EXCEPTIONS -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_BOOTSTRAP_LIB -DQT_BOOTSTRAPPED -DQT_LITE_UNICODE -DQT_NO_CAST_TO_ASCII -DQT_NO_CODECS -DQT_NO_DATASTREAM -DQT_NO_LIBRARY -DQT_NO_QOBJECT -DQT_NO_SYSTEMLOCALE -DQT_NO_THREAD -DQT_NO_UNICODETABLES -DQT_NO_USING_NAMESPACE -DQT_NO_DEPRECATED -DQT_NO_TRANSLATION -DQT_QMAKE_LOCATION="/home/jkt/work/prog/qt5/qtbase/bin/qmake" -I../../../mkspecs/linux-g++-64 -I. -I../../corelib/global -I. -I../../../include -I../../../include/QtCore -I../../../include/QtCore/5.0.2 -I../../../include/QtCore/5.0.2/QtCore -I../../../include/QtXml -I/home/jkt/work/prog/qt5/qtbase/include/QtXml/5.0.2 -I/home/jkt/work/prog/qt5/qtbase/include/QtXml/5.0.2/QtXml -o .obj/debug-shared/main.o main.cpp
make[4]: Entering directory `/home/jkt/work/prog/qt5/qtbase/src/tools/qdbusxml2cpp'
g++ -m64 -Wl,-O1 -o ../../../bin/qdbusxml2cpp .obj/debug-shared/qdbusxml2cpp.o .obj/debug-shared/qdbusintrospection.o .obj/debug-shared/qdbusxmlparser.o .obj/debug-shared/qdbuserror.o .obj/debug-shared/qdbusutil.o .obj/debug-shared/qdbusmetatype.o .obj/debug-shared/qdbusargument.o .obj/debug-shared/qdbusextratypes.o .obj/debug-shared/qdbus_symbols.o .obj/debug-shared/qdbusunixfiledescriptor.o   -L/home/jkt/work/prog/qt5/qtbase/lib -lQt5Bootstrap -lpthread 
make[4]: Entering directory `/home/jkt/work/prog/qt5/qtbase/src/tools/qdoc'
g++ -m64 -Wl,-O1 -o ../../../bin/qdoc .obj/debug-shared/atom.o .obj/debug-shared/codechunk.o .obj/debug-shared/codemarker.o .obj/debug-shared/codeparser.o .obj/debug-shared/config.o .obj/debug-shared/cppcodemarker.o .obj/debug-shared/cppcodeparser.o .obj/debug-shared/ditaxmlgenerator.o .obj/debug-shared/doc.o .obj/debug-shared/editdistance.o .obj/debug-shared/generator.o .obj/debug-shared/helpprojectwriter.o .obj/debug-shared/htmlgenerator.o .obj/debug-shared/location.o .obj/debug-shared/main.o .obj/debug-shared/node.o .obj/debug-shared/openedlist.o .obj/debug-shared/plaincodemarker.o .obj/debug-shared/puredocparser.o .obj/debug-shared/qdocdatabase.o .obj/debug-shared/qdoctagfiles.o .obj/debug-shared/qdocindexfiles.o .obj/debug-shared/quoter.o .obj/debug-shared/separator.o .obj/debug-shared/text.o .obj/debug-shared/tokenizer.o .obj/debug-shared/tree.o .obj/debug-shared/yyindent.o .obj/debug-shared/qcryptographichash.o .obj/debug-shared/qqmljsast.o .obj/debug-shared/qqmljsastvisitor.o .obj/debug-shared/qqmljsengine_p.o .obj/debug-shared/qqmljsgrammar.o .obj/debug-shared/qqmljslexer.o .obj/debug-shared/qqmljsparser.o .obj/debug-shared/jscodemarker.o .obj/debug-shared/qmlcodemarker.o .obj/debug-shared/qmlcodeparser.o .obj/debug-shared/qmlmarkupvisitor.o .obj/debug-shared/qmlvisitor.o   -L/home/jkt/work/prog/qt5/qtbase/lib -lQt5Bootstrap -lpthread 
/home/jkt/work/prog/qt5/qtbase/lib/libQt5Bootstrap.a(qbytearray.o): In function `qUncompress(unsigned char const*, int)':
qbytearray.cpp:(.text._Z11qUncompressPKhi+0xd0): undefined reference to `uncompress'
/home/jkt/work/prog/qt5/qtbase/lib/libQt5Bootstrap.a(qbytearray.o): In function `qCompress(unsigned char const*, int, int)':
qbytearray.cpp:(.text._Z9qCompressPKhii+0xd2): undefined reference to `compress2'
collect2: ld returned 1 exit status

I've managed to accidentally reproduce this error on two machines (Gentoo Linux, gcc 4.6.x,... and a RHEL6 clone). Can I somehow requse what I've built so far, or do I have to clear everything and wait again? :)

With kind regards,
Jan

-- 
Trojitá, a fast Qt IMAP e-mail client -- http://trojita.flaska.net/



More information about the Development mailing list