今天要在fedora 13下安装Q 5.1.1开发环境。 我下载的是这个文件:qt-linux-opensource-5.1.1-x86-offline.run
[root@abcOT]# ./qt-linux-opensource-5.1.1-x86-offline.run
安装都很顺利,可是打开快捷方式以后,报错:
[root@abc OT]# 核心载入失败: /opt/Qt5.1.1/Tools/QtCreator/lib/qtcreator/plugins/QtProject/libCore.so: 无法加载库/opt/Qt5.1.1/Tools/QtCreator/lib/qtcreator/plugins/QtProject/libCore.so:(/usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /opt/Qt5.1.1/Tools/QtCreator/lib/qtcreator/plugins/QtProject/../.././libQt5CLucene.so.5))
报错说是没有找到`GLIBCXX_3.4.15' ,我在网上搜索了一下,查看这个文件使用命令:
strings /usr/lib/libstdc++.so.6 | grep GLIBC
得出的结果:
。。。
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
。。。
确实是少了3.4.15。。。
有的说是GCC的版本比较低,安装个新版GCC就OK了。
我就下载了个GCC-4.8,安装起来好麻烦啊,总是报错。干脆就不装了,自己想个办法。 又不想用高版本Fedora,又想用这个版QT。于是就想到下载个更高版本的libstdc++
这个应该是C++库文件; 我没有去网上搜索更高版本的文件,而是从这个资源站下的: (英文谷歌搜索出来的,我是初学者,用百度我是没搜索出来)
http://archives.fedoraproject.org/pub/archive/fedora/
没进过类似网站的,可以进去探索一下。这个是下载FEDORA各种系统ISO,软件包的网站。
我下载libstdc++进入的是这个路径:
这个路径的意思是进入发行版fc17目录,下载x86架构下的软件包,' l '开头的软件包,进入之后CTRL+F搜索就出来了! 得到的结果:
libstdc++-4.7.0-5.fc17.i686.rpm
好了,拿到这个包,我没有安装,只是想提取里面的文件。 这个我不会,还是搜索。。。
rpm2cpio libstdc++-4.7.0-5.fc17.i686.rpm >test.cpio
把这个包拷贝成test.cpio文件,之后再执行:
cpio -i --make-directories <test.cpio
之后就会看到一个目录,新生成的。 进去探索一下!! 找到文件了! 这个文件就是链接/usr/lib/libstdc++.so.6的,比目前的要新啊。
用ln -s 命令链接一下新文件~
ln -s libstdc++.so.6.0.17 libstdc++.so.6
然后再:
strings /usr/lib/libstdc++.so.6 | grep GLIBC
得到的值:
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
已经有我需要的了。。。再去打开QT, 可以启动了!!!
随便建立个项目,看编译情况。
又报错!!! 这次编译报错是:
/usr/bin/ld: cannot find -lGL
。。。继续搜索
使用命令yum install mesa-libgl* 安装。
居然YUM不行了!!! 我查了一下,更新源也不行,看来是Fedora 13是不行了!
挂载光驱好了~
在光盘的Packages目录里执行
rpm -ivh --nodeps mesa*
--nodeps是忽略依赖关系,如果不打这个,很难通过。
安装好以后再进QT编译,OK了!!!