Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

Qt 4.5.3

2009-10-02
2013-06-06
  • I'm trying to build Qt 4.5.3 with mingw-w64, I applied patches found at http://svn.clazzes.org/svn/mingw-pkg/trunk/mingw-w64-deb/mingw-w64-qt4-4.5.2/patches/

    Configured qt with configure -release -qt-style-windowsvista -phonon -webkit -sse2 -qt-libjpeg -qt-libtiff -qt-libmng -qt-libpng -qt-gif -qt-zlib -shared -opensource -no-accessibility -no-qt3support -fast -platform win32-g++

    But I get lots of errors during QtXml4 linking:

        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1aee8): undefined re
        ference to `_imp___ZNK10QTextCodec11makeEncoderEv'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1af09): undefined re
        ference to `_imp___ZN7QString17fromLatin1_helperEPKci'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1af3e): undefined re
        ference to `_imp___ZN12QTextEncoder11fromUnicodeERK7QString'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1afc6): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b0fe): undefined re
        ference to `_imp___ZN12QTextEncoder11fromUnicodeEPK5QChari'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b120): undefined re
        ference to `_imp___ZN9QIODevice5writeEPKcx'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b18f): undefined re
        ference to `_imp___ZNK10QStringRef8appendToEP7QString'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b198): undefined re
        ference to `_imp___ZN7QString11shared_nullE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b280): undefined re
        ference to `_imp___ZN12QTextEncoder11fromUnicodeERK7QString'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b2aa): undefined re
        ference to `_imp___ZN9QIODevice5writeEPKcx'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b303): undefined re
        ference to `_imp___ZN7QString6appendERKS_'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b3e0): undefined re
        ference to `_imp___ZN7QString11shared_nullE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b42a): undefined re
        ference to `_imp___ZN7QString7reallocEi'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b453): undefined re
        ference to `_imp___ZN7QString4growEi'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b45a): undefined re
        ference to `_imp___ZN7QString7reallocEi'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b477): undefined re
        ference to `_imp___ZN7QString6appendERK13QLatin1String'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b4d0): undefined re
        ference to `_imp___ZN7QString4growEi'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b4e0): undefined re
        ference to `_imp___ZN7QString7reallocEi'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b58c): undefined re
        ference to `_imp___ZNK5QChar7isSpaceEv'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b629): undefined re
        ference to `_imp___ZN7QString6appendERK13QLatin1String'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b65b): undefined re
        ference to `_imp___ZN7QString6appendERK13QLatin1String'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b6ed): undefined re
        ference to `_imp___ZN7QString6appendERK13QLatin1String'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b7b9): undefined re
        ference to `_imp___ZN12QTextEncoder11fromUnicodeERK7QString'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b7e3): undefined re
        ference to `_imp___ZN9QIODevice5writeEPKcx'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b84c): undefined re
        ference to `_imp___ZN7QString6appendERKS_'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b873): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b9af): undefined re
        ference to `_imp___ZN7QString17fromLatin1_helperEPKci'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1b9e4): undefined re
        ference to `_imp___ZN12QTextEncoder11fromUnicodeERK7QString'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1ba06): undefined re
        ference to `_imp___ZN9QIODevice5writeEPKcx'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1ba87): undefined re
        ference to `_imp___ZN7QString6appendERK13QLatin1String'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1ba9e): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1baee): undefined re
        ference to `_imp___ZN9QIODevice5writeEPKcx'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1beba): undefined re
        ference to `_imp___ZN7QString6resizeEi'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1bef4): undefined re
        ference to `_imp___ZN7QString6insertEiPK5QChari'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1bf54): undefined re
        ference to `_imp___ZN7QString11shared_nullE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1bf7c): undefined re
        ference to `_imp___ZN7QString6numberEii'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1bf88): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1bffa): undefined re
        ference to `_imp___ZN7QString17fromLatin1_helperEPKci'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1c02e): undefined re
        ference to `_imp___ZN7QString6appendERKS_'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1c04c): undefined re
        ference to `_imp___ZN7QStringaSERKS_'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1c10b): undefined re
        ference to `_imp___ZN7QString6resizeEi'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1c145): undefined re
        ference to `_imp___ZN7QString6insertEiPK5QChari'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1c265): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1c27f): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1c7af): undefined re
        ference to `_imp___ZN7QBufferC1EP10QByteArrayP7QObject'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1c92f): undefined re
        ference to `_imp___ZN7QBufferC1EP10QByteArrayP7QObject'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1cc3f): undefined re
        ference to `_imp___ZN12QTextEncoderD1Ev'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1cd16): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1ce9f): undefined re
        ference to `_imp___ZN12QTextEncoderD1Ev'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1cf76): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1d169): undefined re
        ference to `_imp___ZN12QTextEncoderD1Ev'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1d189): undefined re
        ference to `_imp___ZNK10QTextCodec11makeEncoderEv'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1d1d0): undefined re
        ference to `_imp___ZN7QString17fromLatin1_helperEPKci'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1d202): undefined re
        ference to `_imp___ZN12QTextEncoder11fromUnicodeERK7QString'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1d246): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1d31d): undefined re
        ference to `_imp___ZN10QByteArrayC1EPKc'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1d330): undefined re
        ference to `_imp___ZN10QTextCodec12codecForNameERK10QByteArray'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1d4dd): undefined re
        ference to `_imp___ZN10QByteArrayC1Eic'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1d4f9): undefined re
        ference to `_imp___ZN10QByteArrayaSERKS_'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1d59e): undefined re
        ference to `_imp___ZNK10QByteArray5countEc'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1d7af): undefined re
        ference to `_imp___ZNK10QStringRef8toStringEv'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1d8b7): undefined re
        ference to `_imp___ZNK10QStringRef8toStringEv'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1d959): undefined re
        ference to `_imp___ZNK10QStringRef8toStringEv'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1d9e8): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1da03): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1da1e): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1da42): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1da62): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1dc32): undefined re
        ference to `_imp___ZN7QString7replaceERK13QLatin1StringS2_N2Qt15CaseSensitivityE
        '
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1dca3): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1e099): undefined re
        ference to `_imp___ZN7QString6resizeEi'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1e0b1): undefined re
        ference to `_imp___ZN7QString6insertEiPK5QChari'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1e0e5): undefined re
        ference to `_imp___ZN7QString6resizeEi'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1e280): undefined re
        ference to `_imp___ZN7QString6resizeEi'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1e296): undefined re
        ference to `_imp___ZN7QString6insertEiPK5QChari'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1e356): undefined re
        ference to `_imp___ZN7QString11shared_nullE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1e595): undefined re
        ference to `_imp___ZN7QString17fromLatin1_helperEPKci'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1e5fe): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1e89f): undefined re
        ference to `_imp___ZN7QString6resizeEi'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1e8b4): undefined re
        ference to `_imp___ZN7QString6insertEiPK5QChari'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1ea7e): undefined re
        ference to `_imp___ZN7QString11shared_nullE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1eaee): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1ec03): undefined re
        ference to `_imp___ZN7QString11shared_nullE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1ec7e): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1ed96): undefined re
        ference to `_imp___ZNK10QStringRef8toStringEv'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1ee85): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1ef18): undefined re
        ference to `_imp___ZNK10QStringRef8toStringEv'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1ef34): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1f080): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1f0ff): undefined re
        ference to `_imp___ZNK10QStringRef8toStringEv'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1f145): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1f198): undefined re
        ference to `_imp___ZNK10QStringRef8toStringEv'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1f1e0): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1f236): undefined re
        ference to `_imp___ZNK10QStringRef8toStringEv'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1f27c): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1f2d0): undefined re
        ference to `_imp___ZNK10QStringRef8toStringEv'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1f318): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1f38e): undefined re
        ference to `_imp___ZNK10QStringRef8toStringEv'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1f3e0): undefined re
        ference to `_imp___ZNK10QStringRef8toStringEv'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1f539): undefined re
        ference to `_imp___ZNK10QStringRef8toStringEv'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1f581): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1f59c): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1f5b7): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text+0x1f5d2): undefined re
        ference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text$_ZN25QXmlStreamPrivate
        TagStack18addToStringStorageERK10QStringRef[QXmlStreamPrivateTagStack::addToStri
        ngStorage(QStringRef const&)]+0x46): undefined reference to `_imp___ZN7QString6r
        esizeEi'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text$_ZN25QXmlStreamPrivate
        TagStack18addToStringStorageERK10QStringRef[QXmlStreamPrivateTagStack::addToStri
        ngStorage(QStringRef const&)]+0x6b): undefined reference to `_imp___ZN7QString6i
        nsertEiPK5QChari'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text$_ZN25QXmlStreamPrivate
        TagStack18addToStringStorageERK10QStringRef[QXmlStreamPrivateTagStack::addToStri
        ngStorage(QStringRef const&)]+0xa4): undefined reference to `_imp___ZN7QString11
        shared_nullE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text$_ZNK5QHashI7QStringN23
        QXmlStreamReaderPrivate6EntityEE8findNodeERKS0_Pj[QHash<QString, QXmlStreamReade
        rPrivate::Entity>::findNode(QString const&, unsigned int*) const]+0x62): undefin
        ed reference to `_imp___ZNK7QStringeqERKS_'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text$_ZN25QXmlStreamPrivate
        TagStackD2Ev+0xd6): und
        efined reference to `_imp___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text$_ZN5QHashI7QStringN23Q
        XmlStreamReaderPrivate6EntityEE8freeDataEP9QHashData[QHash<QString, QXmlStreamRe
        aderPrivate::Entity>::freeData(QHashData*)]+0x8f): undefined reference to `_imp_
        __ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text$_ZN5QHashI7QStringN23Q
        XmlStreamReaderPrivate6EntityEE8freeDataEP9QHashData[QHash<QString, QXmlStreamRe
        aderPrivate::Entity>::freeData(QHashData*)]+0x124): undefined reference to `_imp
        ___ZN9QHashData8freeNodeEPv'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text$_ZN5QHashI7QStringN23Q
        XmlStreamReaderPrivate6EntityEE8freeDataEP9QHashData[QHash<QString, QXmlStreamRe
        aderPrivate::Entity>::freeData(QHashData*)]+0x156): undefined reference to `_imp
        ___ZN9QHashData14destroyAndFreeEv'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text$_ZN5QHashI7QStringN23Q
        XmlStreamReaderPrivate6EntityEE8freeDataEP9QHashData[QHash<QString, QXmlStreamRe
        aderPrivate::Entity>::freeData(QHashData*)]+0x1a3): undefined reference to `_imp
        ___ZN7QString4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text$_ZN5QHashI7QStringN23Q
        XmlStreamReaderPrivate6EntityEE13detach_helperEv[QHash<QString, QXmlStreamReader
        Private::Entity>::detach_helper()]+0x1a): undefined reference to `_imp___ZN9QHas
        hData13detach_helperEPFvPNS_4NodeEPvEi'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text$_ZN23QXmlStreamReaderP
        rivate15referenceEntityERNS_6EntityE[QXmlStreamReaderPrivate::referenceEntity(QX
        mlStreamReaderPrivate::Entity&)]+0x1e4): undefined reference to `_imp___ZN16QCor
        eApplication9translateEPKcS1_S1_NS_8EncodingE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text$_ZN23QXmlStreamReaderP
        rivate15referenceEntityERNS_6EntityE[QXmlStreamReaderPrivate::referenceEntity(QX
        mlStreamReaderPrivate::Entity&)]+0x231): undefined reference to `_imp___ZN7QStri
        ng4freeEPNS_4DataE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text$_ZN7QVectorI19QXmlStre
        amAttributeE7reallocEii+0x5a):
        undefined reference to `_imp___ZN11QVectorData6mallocEiiiPS_'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text$_ZN7QVectorI19QXmlStre
        amAttributeE6resizeEi+0x62): undefine
        d reference to `_imp___ZN11QVectorData4growEiiib'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text$_ZN7QVectorI19QXmlStre
        amAttributeE6appendERKS0_[QVector<QXmlStreamAttribute>::append(QXmlStreamAttribu
        te const&)]+0xb7): undefined reference to `_imp___ZN11QVectorData4growEiiib'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text$_ZN7QVectorI29QXmlStre
        amNotationDeclarationE7reallocEii[QVector<QXmlStreamNotationDeclaration>::reallo
        c(int, int)]+0x41): undefined reference to `_imp___ZN11QVectorData6mallocEiiiPS_
        '
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text$_ZN7QVectorI29QXmlStre
        amNotationDeclarationE7reallocEii[QVector<QXmlStreamNotationDeclaration>::reallo
        c(int, int)]+0x149): undefined reference to `_imp___ZN7QString11shared_nullE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text$_ZN7QVectorI29QXmlStre
        amNotationDeclarationE7reallocEii[QVector<QXmlStreamNotationDeclaration>::reallo
        c(int, int)]+0x28a): undefined reference to `_imp___ZN7QString11shared_nullE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text$_ZN7QVectorI30QXmlStre
        amNamespaceDeclarationE7reallocEii[QVector<QXmlStreamNamespaceDeclaration>::real
        loc(int, int)]+0x41): undefined reference to `_imp___ZN11QVectorData6mallocEiiiP
        S_'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text$_ZN7QVectorI30QXmlStre
        amNamespaceDeclarationE7reallocEii[QVector<QXmlStreamNamespaceDeclaration>::real
        loc(int, int)]+0x131): undefined reference to `_imp___ZN7QString11shared_nullE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text$_ZN7QVectorI30QXmlStre
        amNamespaceDeclarationE7reallocEii[QVector<QXmlStreamNamespaceDeclaration>::real
        loc(int, int)]+0x221): undefined reference to `_imp___ZN7QString11shared_nullE'
        tmp/obj/release_shared/qxmlstream.o:qxmlstream.cpp:(.text$_ZN7QVectorI27QXmlStre
        amEntityDeclarationE7reallocEii[QVector<QXmlStreamEntityDeclaration>::realloc(in
        t, int)]+0x5a): undefined reference to `_imp___ZN11QVectorData6mallocEiiiPS_'
        collect2: ld returned 1 exit status

    Anyone more success?

     
  • Kai Tietz
    Kai Tietz
    2009-10-03

    This error you see is may reasoned by a missing import library, or the order of the link libraries is wrong.

     
  • This is the command called from make:

    g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-rel
    oc -Wl,-s -mthreads -Wl -shared -Wl,-out-implib,c:\Development\x64\Mingw\Qt-4.5
    .3\lib\libQtXml4.a -o ..\..\lib\QtXml4.dll tmp/obj/release_shared/qdom.o tmp/obj
    /release_shared/qxml.o tmp/obj/release_shared/qxmlstream.o  -L"c:\Development\x6
    4\Mingw\Qt-4.5.3\lib" -L"c:\Development\x64\Mingw\Qt-4.5.3\lib" tmp\obj\release_
    shared\QtXml_resource_res.o -lQtCore4

    Even if I put that library befor the object files, it won't link. I looked at what symbols are exported from QtCore library, but it looks they are not even there :-(

     
  • drangon zhou
    drangon zhou
    2009-12-29

    I got similar problem when compiling QT 4.6

    I have some question about dllimport / dllexport and " _imp_ " prefix.
    see the following code, why dllimport has _imp_ prefix and dllexport hasn't ?

    E:\temp\test_mingw>type tdesc.c

    int __declspec(dllimport) func_b( int a, int b );

    int __declspec(dllexport) func_a( int arg )
    {
            int a = arg;
            a = func_b( a, arg );
            return a;
    }

    E:\temp\test_mingw>gcc -c tdesc.c -o a.o

    E:\temp\test_mingw>nm a.o
    00000000 b .bss
    00000000 d .data
    00000000 i .drectve
    00000000 t .text
                       U __imp__func_b
    00000000 T _func_a

    E:\temp\test_mingw>gcc -v
    Using built-in specs.
    COLLECT_GCC=gcc
    COLLECT_LTO_WRAPPER=e:/devel/mingw32/bin/../libexec/gcc/i686-w64-mingw32/4.5.0/l
    to-wrapper.exe
    Target: i686-w64-mingw32
    Configured with: /home/zhoujg/mingw_32/source/gcc/configure -host=i686-w64-ming
    w32 -target=i686-w64-mingw32 -disable-nls -enable-languages=c,c++ -with-gmp=
    /home/zhoujg/mingw_32/build/for_target -enable-twoprocess -disable-libstdcxx-p
    ch -prefix=/home/zhoujg/mingw_32/target -with-sysroot=/home/zhoujg/mingw_32/ta
    rget
    Thread model: win32
    gcc version 4.5.0 20091227 (experimental) (GCC)

     
  • Jonathan Yong
    Jonathan Yong
    2009-12-29

    drangon_zhou:
    you need to build a dll and import lib out of the obj file defining the symbols, otherwise there will be no "imp" prefix at the exports.

    Notice the .drectve section, it tells the linker that it should be exported.

    jardasmid:
    you can't expect to use dllimport/dllexport yet link to static libraries. That is what ktietz70 meant by your missing import lib.

     
  • drangon zhou
    drangon zhou
    2009-12-30

    I dig into the qt link problem, it's strange.

    Use qbuffer.o as example, when compile, qbuffer.o has following symbol :

        00000a80 T __ZN7QBufferC1EP10QByteArrayP7QObject
        00000960 T __ZN7QBufferC1EP7QObject
        00000a80 T __ZN7QBufferC2EP10QByteArrayP7QObject
        00000960 T __ZN7QBufferC2EP7QObject
        000000e0 T __ZN7QBufferD0Ev
        000000c0 T __ZN7QBufferD1Ev
        000000c0 T __ZN7QBufferD2Ev
                 U __ZN7QObject10childEventEP11QChildEvent
        00000000 T __ZN7QObject10disconnectEPKS_PKc
                 U __ZN7QObject10disconnectEPKS_PKcS1_S3_

    when qbuffer.o link into QtCore4.dll, with command line -shared -Wl,-out-implib,e:\open_source\bdqt\lib\libQtCore4.a, then QtCore4.a has following symbol :

        d002543.o:
        00000000 i .idata$4
        00000000 i .idata$5
        00000000 i .idata$6
        00000000 i .idata$7
        00000000 t .text
        00000000 T QBuffer::~QBuffer()
                 U _head_QtCore4_dll
        00000000 I _imp___ZN7QBufferD2Ev
       
        d002542.o:
        00000000 i .idata$4
        00000000 i .idata$5
        00000000 i .idata$6
        00000000 i .idata$7
        00000000 t .text
        00000000 T QBuffer::~QBuffer()
                 U _head_QtCore4_dll
        00000000 I _imp___ZN7QBufferD0Ev

    _imp___ZN7QBufferD1Ev is missing.
    but when link QtXml4.dll using QtCore4.dll, it need _imp___ZN7QBufferD1Ev, so got error :

        tmp/obj/release_shared/qdom.o:qdom.cpp:(.text+0xe8ea): undefined reference to `_imp___ZN7QBufferC1EP7QObject'
        tmp/obj/release_shared/qdom.o:qdom.cpp:(.text+0xe976):   undefined reference to `_imp___ZN7QBufferD1Ev'
        tmp/obj/release_shared/qdom.o:qdom.cpp:(.text+0xe9ff): undefined reference to `_imp___ZN7QBufferD1Ev'
        tmp/obj/release_shared/qdom.o:qdom.cpp:(.text+0x12229): undefined reference to `_imp___ZN7QStringC1Ei5QChar'
        tmp/obj/release_shared/qdom.o:qdom.cpp:(.text+0x129e6): undefined reference to `_imp___ZN7QStringC1Ei5QChar'
        tmp/obj/release_shared/qxml.o:qxml.cpp:(.text+0x850): undefined reference to `_imp___ZN7QRegExpC1ERK7QStringN2Qt15CaseSensitivityENS_13PatternSyntaxE'

    what's difference of _imp___ZN7QBufferD0Ev , _imp___ZN7QBufferD1Ev , _imp___ZN7QBufferD2Ev ?
    why xxxD1Ev and xxxE2Ev has same address, so that xxxD1Ev is remove but needed when linking ?

     
  • Jonathan Yong
    Jonathan Yong
    2009-12-30

    Hi,

    try adding -Wl,-export-all-symbols when building the DLL, it should export defined all symbols.

     
  • drangon zhou
    drangon zhou
    2009-12-31

    Thanks, -Wl,-export-all-symbols works, I have successfully built qt-4.6.0 using i686-w64-mingw32 toolchain, with some minor code modification.

    I will try to build qt-4.6.0 using x86_64-w64-mingw32 toolchain soon.

     
  • drangon zhou
    drangon zhou
    2010-01-01

    two things :

    (1) many libraries has the same problem when compiled as shared library.

    symbol xxxD1Ev and xxxD2Ev has same address, so that xxxD1Ev is remove, and keep xxxD2Ev, but when this shared library is used, the xxxD1Ev symbol is need but not exist, then link failed.

    adding -Wl,-export-all-symbols when building the shared library can fix it.

    why this happend ? does xxxD2Ev useful ? Can we keep xxxD1Ev instead of xxxD2Ev ?

    (2) qt 4.6.0 failed to build under x86_64-w64-mingw32, compiler internal error.

     
  • drangon zhou
    drangon zhou
    2010-01-10

    the xxxD1Ev symbol exists in QtCore4.dll, but nonexist in libQtCore4.dll.a, maybe it is a but of ld.

    And after adding -Wl,-export-all-symbols for linking, the symbol is too much, making link very slowly, tens or hundreds slower than before. oprofile shows:

    4728457  44.1659  libc-2.11.so             libc-2.11.so             __strcmp_sse2
    2610572  24.3839  ld                       ld                       coff_section_from_bfd_index
    999505    9.3358  no-vmlinux               no-vmlinux               /no-vmlinux
    287506    2.6854  ld                       ld                       _bfd_pex64i_swap_sym_in
    187458    1.7509  ld                       ld                       bfd_getl32
    123682    1.1552  ld                       ld                       bfd_getl16