CentOS7 + 升级gcc + Qt5.15.2

1、升级Gcc 看这一篇(https://blog.youkuaiyun.com/bubbleyang/article/details/128014360

这样升级会有问题!
CentOS7自带的Gcc版本为4.8.5,这里需要升级到8.3.1。升级步骤如下:

(1)安装 centos-release-scl

sudo yum install centos-release-scl

(2)安装 devtoolset-8

sudo yum install devtoolset-8-gcc*

(3)激活对应的devtoolset

scl enable devtoolset-8 bash

这里就完成gcc的升级了,可以查看以下gcc的版本

gcc -v

显示为 gcc version 8.3.1

这条激活命令只对本次会话有效,一旦重启后还是会变回原来的4.8.5版本

(4)直接替换旧的gcc

旧版本gcc是/usr/bin/gcc,所以将该文件替换为新版本的gcc软连接即可

mv /usr/bin/gcc /usr/bin/gcc-4.8.5
ln -s /opt/rh/devtoolset-8/root/bin/gcc /usr/bin/gcc

(5)替换g++

如果之前没有安装过gcc-c++,那么在/usr/bin目录里不会有“g++"文件,所以直接建立软连接即可,如果有,那么先进行备份,然后再建立软连接。

mv /usr/bin/g++ /usr/bin/g++-4.8.5  
 #如果有g++,这条命令会成功执行,如果没有,那么直接执行下面一行
ln -s /opt/rh/devtoolset-8/root/bin/g++ /usr/bin/g++

现在随时在终端查看gcc的版本,都是8.3.1了。

2、安装Qt

这里选择在线安装方式,选择的是LTS中的Qt5.15.2

(1)直接从清华源里选择在线安装文件

https://mirrors.tuna.tsinghua.edu.cn/qt/archive/online_installers/4.0/qt-unified-linux-x64-4.0.0-online.run

使用Firefox下载到本地文件夹中。

(2)修改安装文件的可执行方式

在终端进入刚才下载文件所在的目录,然后执行下面的命令

sudo chmod +x qt-unified-linux-x64-4.0.0-online.run

(3)运行在线安装文件

./qt-unified-linux-x64-4.0.0-online.run

这里会启动qt的安装界面,输入自己已经注册号的qt账号,选择LTS过滤,然后勾选qt5.15.2的相关包安装即可。

(4)安装目录及启动文件

Qt的安装目录在/opt/Qt文件夹下

qtcreator的启动文件是/opt/Qt/Tools/QtCreator/qtcreator

CentOS7上没有给QtCreator创建在应用程序中的启动项目,这里记住启动路径即可。

(5)添加qmake的软连接

Qt安装完成后,并没有配置环境变量,我这里懒得配置了,直接给qmake建立一个软连接算了。

ln -s /opt/Qt/5.15.2/gcc_64/bin/qmake /usr/bin/qmake
<think>我们被要求安装Qt 5.15.2CentOS 8上。由于CentOS 8已经停止维护,我们需要考虑使用替代源(如EPEL、PowerTools)或者从源码编译安装。但是,Qt官方提供了二进制安装包,我们可以下载并安装。另外,也可以考虑使用在线安装器(Qt Installer Framework)来安装。 根据引用[2]中提到的,Qt官方下载地址为:https://download.qt.io/official_releases/qt/ 我们可以找到5.15.2的版本。 步骤: 1. 安装必要的依赖 2. 下载Qt 5.15.2的安装包(可能是.run文件,因为Linux下Qt提供的是这种安装程序) 3. 给安装程序执行权限并运行 4. 按照图形界面进行安装 但是,注意:Qt 5.15.2的在线安装器可能需要图形界面,如果服务器没有图形界面,我们可以考虑使用虚拟显示(xvfb)或者选择离线安装包(较大,约2GB+)。 另外,我们也可以选择从源码编译安装,但编译时间较长。 这里我们选择使用二进制安装包(在线安装器)进行安装。 参考引用[1][2][3]中提到的依赖,我们需要安装一些32位和64位的库。由于CentOS 8默认是64位,我们主要安装64位的依赖。但是,考虑到Qt安装器本身可能是32位的,我们可能需要安装32位的库(如引用1中提到的alsa-lib.i686等)。但是,CentOS 8中已经不再使用yum,而是dnf,并且默认仓库可能没有32位的包。我们可以通过启用multilib来安装。 具体步骤: 1. 安装依赖: 根据引用[1][2]和[3],我们需要安装一些开发库。这里我们主要安装64位的,同时为了运行32位安装器,我们安装一些必要的32位库。 首先,启用EPEL和PowerTools(在CentOS 8中称为PowerTools)仓库: ``` sudo dnf install epel-release sudo dnf config-manager --set-enabled PowerTools ``` 然后安装依赖: ``` sudo dnf groupinstall "Development Tools" sudo dnf install mesa-libGL-devel mesa-libGLU-devel freeglut-devel sudo dnf install alsa-lib fontconfig freetype glib2 libSM libXScrnSaver libXi libXrandr libXrender libXv libstdc++ pulseaudio-libs qt qt-x11 qtwebkit zlib ``` 对于32位库(如果安装器需要): ``` sudo dnf install alsa-lib.i686 fontconfig.i686 freetype.i686 glib2.i686 libSM.i686 libXScrnSaver.i686 libXi.i686 libXrandr.i686 libXrender.i686 libXv.i686 libstdc++.i686 pulseaudio-libs.i686 qt.i686 qt-x11.i686 qtwebkit.i686 zlib.i686 ``` 2. 下载Qt安装器: 访问 https://download.qt.io/official_releases/online_installers/ 下载最新的在线安装器(比如:qt-unified-linux-x64-online.run 或 qt-unified-linux-x86-online.run)。由于我们系统是64位,我们下载64位版本。 ``` wget https://download.qt.io/official_releases/online_installers/qt-unified-linux-x64-online.run ``` 3. 给安装器执行权限: ``` chmod +x qt-unified-linux-x64-online.run ``` 4. 运行安装器: 如果是在图形界面下,直接运行: ``` ./qt-unified-linux-x64-online.run ``` 如果是在无图形界面的服务器上,我们可以使用xvfb(虚拟显示)来运行: 先安装xvfb: ``` sudo dnf install xorg-x11-server-Xvfb ``` 然后运行: ``` xvfb-run ./qt-unified-linux-x64-online.run ``` 5. 在安装器的图形界面中,登录Qt账号(如果没有,需要注册一个免费账号),然后选择安装Qt 5.15.2版本,并选择所需的组件(比如Desktop gcc 64-bit等)。 6. 安装完成后,配置环境变量: 假设安装路径为~/Qt(或者你选择的路径),那么需要将qmake的路径加入PATH。例如,如果安装的是5.15.2gcc64版本,则路径可能是:~/Qt/5.15.2/gcc_64/bin 在~/.bashrc中添加: ``` export PATH=$PATH:~/Qt/5.15.2/gcc_64/bin ``` 然后执行: ``` source ~/.bashrc ``` 7. 验证安装: ``` qmake --version ``` 注意:Qt 5.15.2是一个长期支持版本,但仅对商业许可证用户提供二进制包?实际上,在安装时,我们可以选择开源版本(需要登录账号,并同意开源协议)。 另外,如果不想使用在线安装器,也可以下载离线安装包(比如:https://download.qt.io/official_releases/qt/5.15/5.15.2/ ),但是离线安装包很大(比如qt-opensource-linux-x64-5.15.2.run)。安装方式类似。 但是,请注意,离线安装包同样需要图形界面或者xvfb。 如果选择从源码编译安装,步骤会复杂很多,而且需要更多的依赖和时间。这里不推荐,除非有特殊需求。 因此,我们推荐使用在线安装器进行安装。 注意:在CentOS 8上,由于默认的OpenSSL版本较高,而Qt 5.15.2可能链接的是较低版本的OpenSSL,所以如果遇到SSL相关的问题,可能需要额外安装OpenSSL 1.0(或者使用系统自带的1.1版本,但需要确保Qt编译时支持)。不过,如果使用官方二进制包,应该已经处理好了依赖。 如果遇到问题,请检查依赖是否安装完整。 根据引用[4]中提到的,我们也可以安装jdk,但这里不需要。 所以,总结步骤如上。 注意:由于CentOS 8已经EOL,如果遇到仓库不可用的问题,可以考虑将源切换为vault.centos.org或者使用CentOS Stream 8。 下面,我们生成相关问题。</think>### 在CentOS 8上安装Qt 5.15.2的完整指南 #### 步骤1:安装依赖库 首先安装必要的开发工具和依赖库(包括OpenGL和X11组件): ```bash sudo dnf groupinstall "Development Tools" sudo dnf install mesa-libGL-devel mesa-libGLU-devel freeglut-devel sudo dnf install libX11-devel libXext-devel libxcb-devel sudo dnf install alsa-lib fontconfig freetype glib2 libSM libXScrnSaver libXi libXrandr libXrender libXv zlib ``` #### 步骤2:下载Qt安装器 获取Qt官方在线安装器: ```bash wget https://download.qt.io/official_releases/online_installers/qt-unified-linux-x64-online.run chmod +x qt-unified-linux-x64-online.run ``` #### 步骤3:运行安装器 执行安装程序并选择组件: ```bash ./qt-unified-linux-x64-online.run ``` 在安装界面中: 1. 登录Qt账户(需[注册](https://login.qt.io/register)免费开源账户) 2. 选择安装目录(如`/opt/Qt`) 3. 勾选组件: - **Qt 5.15.2** → Desktop gcc 64-bit - Qt Creator(推荐) - 其他所需工具链 #### 步骤4:配置环境变量 编辑`~/.bashrc`添加Qt路径: ```bash echo 'export PATH="$PATH:/opt/Qt/5.15.2/gcc_64/bin"' >> ~/.bashrc source ~/.bashrc ``` #### 步骤5:验证安装 检查版本并测试编译: ```bash qmake --version # 应显示Qt 5.15.2 qtcreator & # 启动Qt Creator ``` #### 常见问题解决 1. **图形界面缺失**(无GUI环境): ```bash sudo dnf install xvfb xvfb-run ./qt-unified-linux-x64-online.run ``` 2. **OpenGL兼容问题**: ```bash sudo dnf install mesa-dri-drivers ``` 3. **依赖库缺失**错误: ```bash sudo dnf install redhat-lsb-core libxkbcommon-x11 ``` > 关键提示:Qt 5.15.2是LTS版本,但官方二进制仅提供给商业用户。开源用户需通过在线安装器获取(需账户验证),或从源码编译安装[^2]。
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值