Я установил автономный установщик «Qt 5.8.0 для Linux 64-bit (766 МБ)», а также файл tar.gz для пользователей Linux и mac по следующей ссылке:

https://www.qt.io/download-open-source/

Файл tar.gz, который я скачал, был qt-everywhere-opensource-src-5.8.0.tar

(Моя система в RHEL 6.6).

Затем я перенес файл tar.gz и установщик на рабочий стол и начал ссылаться на эту ссылку для получения дополнительных инструкций:

http://doc.qt.io/qt-5/linux-building.html

На моем рабочем столе я набрал эти команды:

gunzip qt-everywhere-opensource-src-5.8.0.tar.gz        
tar xvf qt-everywhere-opensource-src-5.8.0.tar    

Это создало каталог qt-everywhere-opensource-src-5.8.0 . Затем я использовал cd для перехода в этот каталог и набрал ./configure .

После этого меня сначала спросили, хочу ли я версию с открытым исходным кодом или коммерческую, и я выбрал версию с открытым исходным кодом. Затем меня спросили, согласен ли я с лицензиями GPL и LGPL, и снова выбрал «да». В самом конце мне показали это сообщение:

Qt is now configured for building. Just run 'gmake'.
Once everything is built, you must run 'gmake install'.
Qt will be installed into /usr/local/Qt-5.8.0

Prior to reconfiguration, make sure you remove any leftovers from
the previous build.

Прочитав это, я написал gmake в командной строке. После обработки gmake течение нескольких часов я получил следующие ошибки:

gmake[4]: Entering directory `/root/Desktop/qt-everywhere-opensource-src-5.8.0/qtscxml/examples/scxml/trafficlight-widgets-static'
/root/Desktop/qt-everywhere-opensource-src-5.8.0/qtscxml/examples/scxml/trafficlight-widgets-static/qscxmlc_wrapper.sh ../trafficlight-common/statemachine.scxml --header statemachine.h --impl ./statemachine.cpp
/root/Desktop/qt-everywhere-opensource-src-5.8.0/qtscxml/bin/qscxmlc: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /root/Desktop/qt-everywhere-opensource-src-5.8.0/qtscxml/bin/qscxmlc)
gmake[4]: *** [statemachine.h] Error 1
gmake[4]: Leaving directory `/root/Desktop/qt-everywhere-opensource-src-5.8.0/qtscxml/examples/scxml/trafficlight-widgets-static'
gmake[3]: *** [sub-trafficlight-widgets-static-make_first] Error 2
gmake[3]: Leaving directory `/root/Desktop/qt-everywhere-opensource-src-5.8.0/qtscxml/examples/scxml'
gmake[2]: *** [sub-scxml-make_first] Error 2
gmake[2]: Leaving directory `/root/Desktop/qt-everywhere-opensource-src-5.8.0/qtscxml/examples'
gmake[1]: *** [sub-examples-make_first] Error 2
gmake[1]: Leaving directory `/root/Desktop/qt-everywhere-opensource-src-5.8.0/qtscxml'
gmake: *** [module-qtscxml-make_first] Error 2

Почему я получаю эти ошибки? Что я должен сделать, чтобы решить их?

РЕДАКТИРОВАТЬ:

Когда я набираю gcc -v, я получаю следующий вывод:

Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/root/gcc-4.8.2/libexec/gcc/x86_64-unknown-linux-gnu/4.8.2/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: /root/Downloads/objdir/../gcc-4.8.2/configure --prefix=/root/gcc-4.8.2 --enable-languages=c,c++,fortran,go --disable-multilib
Thread model: posix
gcc version 4.8.2 (GCC) 

Я внимательно прочитал ошибки и понял, что корнем моих ошибок является эта строка:

/root/Desktop/qt-everywhere-opensource-src-5.8.0/qtscxml/bin/qscxmlc: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found (required by /root/Desktop/qt-everywhere-opensource-src-5.8.0/qtscxml/bin/qscxmlc)

Я сослался на ответ переполнения стека и на основании этого набрал следующую команду:

strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX и он дал мне следующий вывод:

GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_FORCE_NEW
GLIBCXX_DEBUG_MESSAGE_LENGTH

Очевидно, что GLIBCXX_3.4.14 не находится в моей системе, и он ищет его. Как я могу обойти эту проблему?

0