Qt 5.20 的安装

来源:互联网 发布:绵阳鼎盛医疗软件 编辑:程序博客网 时间:2024/04/30 06:20

这里的博文有太多了,大同小异,无非就是升级GCC

升级GCC

    在安装qt的时候,最后的提醒为:


核心载入失败: /opt/Qt5.2.0/Tools/QtCreator/lib/qtcreator/plugins/QtProject/libCore.so: 无法加载库/opt/Qt5.2.0/Tools/QtCreator/lib/qtcreator/plugins/QtProject/libCore.so:(/usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by /opt/Qt5.2.0/Tools/QtCreator/lib/qtcreator/plugins/QtProject/../.././libQt5CLucene.so.5))


    这是因为没有更新gcc造成的,我用 yum install gcc gcc-c++ 后gcc -v的版本才4.5.1所以要更新gcc

注意:

    如果没有yum install gcc gcc-c++ 安装gcc 直接进行下面的操作你会报错

    同时下面的错误还有一个就是第四步编译的时候,如果你不知道你的系统是几核心的,最好不要加-4j,否则也会报错

  1.下载源码包  

接着就是下载源码包

    http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-4.8.2/gcc-4.8.2.tar.bz2(迅雷的下载地址)

    http://ftp.gnu.org/gnu/gcc/  (官方的下载地址)

我采用的是以第一下载地址  接下就是解压  


gcc-4.8.2.tar.bz2  使用 tar xzvf gcc-4.8.2.tar.bz2 命令进行解压的时候报错,提示为

    gzip: stdin: not in gzip format
    tar: Child returned status 1
    tar: Error is not recoverable: exiting now

错误原因为这个压缩包没有采用gizp格式进行压缩,直接把命令改为

    tar xvf gcc-4.8.2.tar.bz2

这样就可以成功解压了。


另一种说法是是用tar -jxvf gcc-4.8.2.tar.bz2 指令,相差不大,详情可以查询tar指令的用法


2.下载编译所需依赖库

    

    cd gcc-4.8.0

    直接在GCC目录下执行:./contrib/download_prerequisites,脚本会自动wget到这几个依赖包并编译。


3.生成makefile文件


    ./configure --enable-checking=release --enable-languages=c,c++ --disable-multilib

gcc 编译参数说明:

  --prefix //默认 gcc 的安装目录,CentOS-6.5 下面最好安装到 /usr 下,不然可能会有问题

  --enable-languages //指定 gcc 能编译哪些语言的文件,每种语言用逗号分隔, 例如 c,c++,java

  --disable-multilib //默认gcc 能在32位系统上将代码编译成64位程序,或者在64位系统上编译成32位程序,如果加上这个编译选项则表示关闭这个gcc的交叉编译功能。


4.编译

    make -j4     -j4代表4核心全部进行 

5.安装

  make install (root用户下)


6.切换GCC到新版

确定新安装的GCC的路径,一般默认在/usr/local/bin下。可以先updatedb,然后locate gcc-4.8|tail找一下

ls /usr/local/bin | grep gcc

添加新GCC到可选项,倒数第三个是名字,倒数第二个参数为新GCC路径,最后一个参数40为优先级,设大一些之后就自动使用新版了 
update-alternatives --install /usr/bin/gcc gcc /usr/local/bin/i686-pc-linux-gnu-gcc 40 


7.确认当前版本已经切换为新版

    gcc -v 

刚开始的时候各种原因gcc无法升级,关闭终端重新打开然后再使用gcc -v 发现果然升级成功了!

8.用/usr/local/lib 下的libstdc++.so.6替换/usr/lib下的libstdc++.so.6

建立软链接

ln -s /usr/local/lib64/libstdc++.so.6.0.18 /usr/lib64/libstdc++.so.6)


9.成功!

cd /home/li/Qt5.2.1/Tools/QtCreator/bin/

./qtcreator


附赠卸载命令

即进入Qt5.2.0文件夹后运行命令
./MaintenanceTool卸载


这是最后一个错误没有解决

QString::arg: Argument missing: 无法解析dbus_connection_can_send_type中的符号“dbus_connection_can_send_type”:dbus-1, (/lib64/libdbus-1.so.3: undefined symbol: dbus_connection_can_send_type)


0 0