Qt Creator Build Error
-
Qt v5.3.1 (used both static and shared)
OS: CentOS 6.6
Qt Creator v.3.3Qt has been established on this machine since July of '14.
Recently, Qt Creator 3.0 quit functioning indicating a missing xcb library. This is after functioning fine for several months. I decided to try to update to the latest version of Qt Creator. Downloaded the sources from my account. Untarred.
QTDIR and path variable pointed to my static installation.
[sototech@obiwancentos qt-creator-enterprise-src-3.3.0]$ qmake -v
QMake version 3.0
Using Qt version 5.3.1 in /Qt/5.3.1_static/lib
qmake -r
...
completed with no error
make -j 2
...
/qt-creator-enterprise-src-3.3.0/lib/qtcreator/libqbscore.a(qmljsrewriter.o): In functionQbsQmlJS::Rewriter::includeLeadingEmptyLine(QString const&, int&)': qmljsrewriter.cpp:(.text+0x196): undefined reference toQTextDocument::QTextDocument(QString const&, QObject*)'
qmljsrewriter.cpp:(.text+0x1a8): undefined reference toQTextDocument::characterAt(int) const' qmljsrewriter.cpp:(.text+0x1b6): undefined reference toQTextDocument::~QTextDocument()'
qmljsrewriter.cpp:(.text+0x1fc): undefined reference toQTextCursor::QTextCursor(QTextDocument*)' qmljsrewriter.cpp:(.text+0x209): undefined reference toQTextCursor::setPosition(int, QTextCursor::MoveMode)'
qmljsrewriter.cpp:(.text+0x211): undefined reference toQTextCursor::blockNumber() const' qmljsrewriter.cpp:(.text+0x220): undefined reference toQTextCursor::block() const'
qmljsrewriter.cpp:(.text+0x230): undefined reference toQTextBlock::previous() const' qmljsrewriter.cpp:(.text+0x240): undefined reference toQTextBlock::text() const'
qmljsrewriter.cpp:(.text+0x26c): undefined reference toQTextBlock::position() const' qmljsrewriter.cpp:(.text+0x27f): undefined reference toQTextCursor::~QTextCursor()'
qmljsrewriter.cpp:(.text+0x2a9): undefined reference toQTextCursor::~QTextCursor()' qmljsrewriter.cpp:(.text+0x2b1): undefined reference toQTextDocument::~QTextDocument()'
/home/sototech/qt-creator-enterprise-src-3.3.0/lib/qtcreator/libqbscore.a(changeset.o): In functionQbsQmlJS::ChangeSet::textAt(int, int)': changeset.cpp:(.text+0x133): undefined reference toQTextCursor::setPosition(int, QTextCursor::MoveMode)'
changeset.cpp:(.text+0x149): undefined reference toQTextCursor::setPosition(int, QTextCursor::MoveMode)' changeset.cpp:(.text+0x155): undefined reference toQTextCursor::selectedText() const'
/home/sototech/qt-creator-enterprise-src-3.3.0/lib/qtcreator/libqbscore.a(changeset.o): In functionQbsQmlJS::ChangeSet::doReplace(QbsQmlJS::ChangeSet::EditOp const&, QList<QbsQmlJS::ChangeSet::EditOp>*)': changeset.cpp:(.text+0x487): undefined reference toQTextCursor::setPosition(int, QTextCursor::MoveMode)'
changeset.cpp:(.text+0x49b): undefined reference toQTextCursor::setPosition(int, QTextCursor::MoveMode)' /home/sototech/qt-creator-enterprise-src-3.3.0/lib/qtcreator/libqbscore.a(changeset.o): In functionQbsQmlJS::ChangeSet::apply_helper()':
changeset.cpp:(.text+0xa69): undefined reference toQTextCursor::beginEditBlock()' changeset.cpp:(.text+0xb9f): undefined reference toQTextCursor::endEditBlock()'
/home/sototech/qt-creator-enterprise-src-3.3.0/lib/qtcreator/libqbscore.a(changeset.o): In functionQbsQmlJS::ChangeSet::doReplace(QbsQmlJS::ChangeSet::EditOp const&, QList<QbsQmlJS::ChangeSet::EditOp>*)': changeset.cpp:(.text+0x4b2): undefined reference toQTextCursor::insertText(QString const&)'
collect2: ld returned 1 exit status
make[3]: *** [../../../../../../bin/qbs] Error 1
make[3]: Leaving directory/home/sototech/qt-creator-enterprise-src-3.3.0/src/shared/qbs/src/app/qbs' make[2]: *** [sub-qbs-make_first] Error 2 make[2]: Leaving directory/home/sototech/qt-creator-enterprise-src-3.3.0/src/shared/qbs/src/app'
make[1]: *** [sub-shared-qbs-src-app-make_first-ordered] Error 2
make[1]: Leaving directory `/home/sototech/qt-creator-enterprise-src-3.3.0/src'
make: *** [sub-src-make_first-ordered] Error 2Reset to shared version of Qt 5.3.1
logged out and back in
[sototech@obiwancentos ~]$ qmake -v
QMake version 3.0
Using Qt version 5.3.1 in /Qt/5.3.1_shared/lib
Removed the old sources.
Untarred the sources again.
qmake -r
make -j 2
...
ln -s libQtcSsh.so.1.0.0 libQtcSsh.so
ln -s libQtcSsh.so.1.0.0 libQtcSsh.so.1
ln -s libQtcSsh.so.1.0.0 libQtcSsh.so.1.0
rm -f ../../../lib/qtcreator/libQtcSsh.so.1.0.0
mv -f libQtcSsh.so.1.0.0 ../../../lib/qtcreator/
rm -f ../../../lib/qtcreator/libQtcSsh.so
rm -f ../../../lib/qtcreator/libQtcSsh.so.1
rm -f ../../../lib/qtcreator/libQtcSsh.so.1.0
mv -f libQtcSsh.so ../../../lib/qtcreator/
mv -f libQtcSsh.so.1 ../../../lib/qtcreator/
mv -f libQtcSsh.so.1.0 ../../../lib/qtcreator/
make[3]: Leaving directory/home/sototech/qt-creator-enterprise-src-3.3.0/src/libs/ssh' make[2]: Leaving directory/home/sototech/qt-creator-enterprise-src-3.3.0/src/libs'
make[1]: *** [sub-libs-make_first-ordered] Error 2
make[1]: Leaving directory `/home/sototech/qt-creator-enterprise-src-3.3.0/src'
make: *** [sub-src-make_first-ordered] Error 2Did not see any errors previous to this one.
I'm clueless.
Anybody have a clue that can help?Karl
-
This is an update:
I upgraded gcc to 4.7.1 using dev tools.
I was then able to complete the build of qtcreator.
However when I run it I get the following:./qtcreator&
[1] 51322This application failed to start because it could not find or load the Qt platform plugin "xcb".Available platform plugins are: linuxfb, minimal, offscreen, xcb.
Reinstalling the application may fix this problem
So it claims is can't find the xcb plugin from its own plugin list. I'm assuming this means libxcb is missing an dependency. I'll check on that next.