如何在CentOS 7.2上通过yum安装gcc 5.3?

如何在CentOS 7.2上通过yum安装gcc 5.3?,gcc,installation,centos7,yum,gcc5,Gcc,Installation,Centos7,Yum,Gcc5,我正在使用CentOS 7.2 当我使用yum-groupinstall“Development Tools”时,gcc版本是4.8.5,如下所示: 我想安装gcc 5.3 如何使用yum?更新:安装最新版本的gcc 9:()-于2020年3月12日发布: 同样的方法也适用于gcc 10()-于2020年5月7日发布 下载文件:或 编译和安装: //required libraries: (some may already have been installed) dnf install l

我正在使用CentOS 7.2

当我使用
yum-groupinstall“Development Tools”
时,gcc版本是4.8.5,如下所示:

我想安装gcc 5.3


如何使用
yum

更新:安装最新版本的gcc 9:()-于2020年3月12日发布

同样的方法也适用于gcc 10()-于2020年5月7日发布

下载文件:

编译和安装:

//required libraries: (some may already have been installed)
dnf install libmpc-devel mpfr-devel gmp-devel

//if dnf install libmpc-devel is not working try:
dnf --enablerepo=PowerTools install libmpc-devel

//install zlib
dnf install zlib-devel*

./configure --with-system-zlib --disable-multilib --enable-languages=c,c++

make -j 8 <== this may take around an hour or more to finish
              (depending on your cpu speed)

make install
//required libraries:
yum install libmpc-devel mpfr-devel gmp-devel

./configure --with-system-zlib --disable-multilib --enable-languages=c,c++

make -j 8 <== this may take around 50 minutes or less to finish with 8 threads
              (depending on your cpu speed)


make install
//必需的库:(可能已经安装了一些库)
dnf安装libmpc-devel-mpfr-devel-gmp-devel
//如果dnf install libmpc devel不工作,请尝试:
dnf--enablerepo=PowerTools安装libmpc-devel
//安装zlib
dnf安装zlib-devel*
//配置-使用系统ZLIB禁用多个语言——使能语言= C,C++

make-j8更新:
通常人们需要最新版本的gcc,并且devtoolset是最新的,因此您可能需要devtoolset-N,其中N={4,5,6,7…},请检查yum以获取系统上可用的最新版本)。为N=7更新了下面的cmds

以devtoolset-7的gcc-7.2.1包为例。首先需要启用,然后在devtoolset-7中提供:

sudo yum install centos-release-scl
sudo yum install devtoolset-7-gcc*
scl enable devtoolset-7 bash
which gcc
gcc --version

在CentOS/RHEL 7服务器上安装GCC和开发工具的命令

以root用户身份键入以下yum命令:
yum集团安装“开发工具”

sudo-yum-group-install“开发工具”

如果上述命令失败,请尝试:
yum-groupinstall”开发工具

使用yum并更新devtoolset的最佳方法是使用CentOS SCLo RH测试存储库

yum install centos-release-scl-rh
yum --enablerepo=centos-sclo-rh-testing install devtoolset-7-gcc devtoolset-7-gcc-c++
还提供了许多附加软件包,以查看所有这些软件包

yum --enablerepo=centos-sclo-rh-testing list devtoolset-7*

您可以使用此方法安装任何dev工具版本,只需将7替换为所需的版本。devtoolset-6-gcc、devtoolset-5-gcc等。

您可以使用centos sclo rh testing repo安装gcc v7,而不必永远编译它,也可以默认启用v7,并允许您在需要时在不同版本之间切换

sudo yum install -y yum-utils centos-release-scl;
sudo yum -y --enablerepo=centos-sclo-rh-testing install devtoolset-7-gcc;
echo "source /opt/rh/devtoolset-7/enable" | sudo tee -a /etc/profile;
source /opt/rh/devtoolset-7/enable;
gcc --version;

遵循本教程@mohammadshahahadathossain是否有
yum
资源?我不确定,但在本例中,您可以从这里使用RPM资源。devtoolset现在提供了5.3.1——有关使用yum启用和安装它的命令,请参见下面的答案。为什么从ftp.mirrorservice.org而不是ftp.gnu.org下载?您还应该下载并验证相应的
.sig
文件(pgp签名)。如图所示,不带--prefix的配置将安装在/usr/local/中,它可能会在路径
make-j$(nproc)上的原始gcc安装之前安装,也可能不会安装
这花了我4个多小时来编译,硬盘空间超过6gb。正如tim18所建议的,在没有
--前缀的情况下运行
make&&make install
安全吗?如果这样做,所有内容都安装到
/usr/
中,而不是
/usr/local
,请检查
config.log
配置为:../configure--prefix=/usr--mandir=/usr/share/man--infodir=/usr/share/info…
同时devtoolset中的gcc版本已经升级到了5.3.1,不仅如此,但您可以安装devtoolset-6以获得6.2.1更改符号链接并不是最好的做法,因为它可能由另一个可以升级的软件包拥有/管理。最好在登录时激活它,或者在系统范围的登录脚本中使用
scl enable devtoolset-6 bash
激活它/opt/rh/devtoolset-6/bin/enable
运行
yum安装devtoolset-4-binutils
也可能有助于获得完整的GCC工具链。我使用
source scl\u source enable devtoolset-4
将当前GCC与
devtoolset-4
安装的GCC进行切换,而这段代码可能会回答这个问题,最好解释如何解决问题,并提供代码作为示例或参考。只有代码的答案可能会令人困惑,并且缺少上下文。遗憾的是,此解决方案不会更新/usr/lib64/libstdc++。因此文件中会有更新的符号。