在CentOS 6.4下安装Qt5.0.1。
1.下载Qt5 SDK
http://releases.qt-project.org/qt5/5.0.1/qt-linux-opensource-5.0.1-x86-offline.run
2.安装
sudo chmod 777 qt-linux-opensource-5.0.1-x86-offline.run
sudo ./qt-linux-opensource-5.0.1-x86-offline.run
会出现下面这样的错误
./qt-linux-opensource-5.0.1-x86-offline.run: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15′ not found (required by ./qt-linux-opensource-5.0.1-x86-offline.run)
3.解决办法
出现该错误的原因是当前的GCC版本(昨天编译安装的gcc-4.8.0)中,没有GLIBCXX_3.4.15。查看libstdc++.so.6 所支持的GLIBC
/usr/lib/libstdc++.so.6 | grep GLIBC
会输出下面这些内容
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
GLIBC_2.0
GLIBC_2.3
GLIBC_2.4
GLIBC_2.1
GLIBC_2.1.3
GLIBC_2.3.2
GLIBC_2.2
GLIBCXX_FORCE_NEW
GLIBCXX_DEBUG_MESSAGE_LENGTH
可以看到没有GLIBCXX_3.4.15这个版本,下载一个新版本
http://ftp.de.debian.org/debian/pool/main/g/gcc-4.7/libstdc++6_4.7.2-5_i386.deb
4.解压文件
ar -x libstdc++6_4.7.2-5_i386.deb
tar -zxvf data.tar.gz
出现usr文件夹。进入usr/lib/i386-linux-gnu目录
cd usr/lib/i386-linux-gnu
5.将libstdc++.so.6.0.17文件复制到 /usr/lib 文件夹下面
sudo cp libstdc++.so.6.0.17 /usr/lib
6.进入/usr/lib文件夹下,建立新的软链接
sudo ln -sf libstdc++.so.6.0.17 libstdc++.so.6
7.再查看一次
strings /usr/lib/libstdc++.so.6 | grep GLIBC
输出
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_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBC_2.0
GLIBC_2.3
GLIBC_2.1.3
GLIBC_2.2
GLIBC_2.1
GLIBC_2.3.2
GLIBCXX_DEBUG_MESSAGE_LENGTH
发现GLIBCXX_3.4.15已经出现了。
8.继续之前的Qt的安装
sudo ./qt-linux-opensource-5.0.1-x86-offline.run
更多CentOS相关信息见CentOS 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=14