如何在Cent OS 6.5中安装g ++ 4.9.2?


13

我正在尝试在Cent OS中安装最新版本的g ++。我管理的最好的事情如下:

wget http://people.centos.org/tru/devtools-2/devtools-2.repo -O /etc/yum.repos.d/devtools-2.repo
yum install devtoolset-2-gcc devtoolset-2-binutils
yum install devtoolset-2-gcc-c++ devtoolset-2-binutils

但这会安装g ++ 4.8.2而不是4.9.2。有没有办法安装4.9.2?

Answers:


4

您将不得不采用老式的方法。获取GCC来源,手动进行构建。

您是否不愿意这样做?(我可以想到一些,但是除非您也这样做,否则我不想添加任何可能会造成混淆的内容)。

如果您不愿意从源代码构建,我可能可以提供一些步骤。

注意:这样做的原因是4.9版的devtools当前仅适用于具有有效许可证的Red Hat用户。稍等片刻,最终我可以确定4.9 devtools也将提供给CentOS用户,就像当前的4.8。


感谢您的回答,看来我会等待。你可以帮我在这里也:superuser.com/questions/834915/...
SpeedCoder

28

CentOS 6/7正式支持这一点。您不需要第三方存储库。在CentOS的仓库中,gcc版本是4.9.2。

yum install centos-release-scl-rh          
yum install devtoolset-3-gcc devtoolset-3-gcc-c++   

要使用更新的工具,请使用以下scl命令启动新的外壳程序:

scl enable devtoolset-3 bash

您可能还需要重置PATH环境变量,该变量可能在〜/ .bashrc或其他配置文件中设置。如果需要更改,它应该指向/opt/rh/devtoolset-3/root/usr/bin/:$PATH

来自CentOSRed Hat的有关SCL的更多信息


这对我不起作用。在看似成功的3个步骤完成之后,我仍然看到gcc 4.7.2gcc -v
BT

好的,除了这些步骤,我还必须更改.bashrc文件,以便将PATH环境变量设置为/opt/rh/devtoolset-3/root/usr/bin/:$PATH而不是/opt/centos/devtoolset-1.1/root/usr/bin/:$PATH。然后,在会话重新启动后,它开始工作了。
英国电信

使用此解决方案后,我看到gcc版本确实进行了更新(使用gcc --version),但是我仍然看到旧版本的头文件。此外,我在我希望它们位于(/ opt / rh / devtoolset-3 / root / usr / include /)的目录中找不到大多数较新的标头。为什么会发生这种情况,我该如何解决?
MaMazav

为了使该答案经受yum search devtoolset | grep gcc-c++

14

我使用Scientific Linux Cern 6存储库在我的CentOS 6.5和CentOS 6.6系统上安装gcc 4.9和g ++ 4.9。它不会安装g ++ 4.9.2。它安装了g ++ 4.9.1,足以满足我的需求。

这是我用来安装它的命令。

cd /etc/yum.repos.d
wget http://linuxsoft.cern.ch/cern/scl/slc6-scl.repo
yum -y --nogpgcheck install devtoolset-3-gcc devtoolset-3-gcc-c++

正如Michael在对本文的评论中所说的,要实际使用此安装的gcc版本,请使用以下命令启动新的shell。

scl enable devtoolset-3 bash

1
要实际使用此安装的gcc版本,请使用scl enable devtoolset-3 bash
Michael

@Michael谢谢你提到这个。我已经在您的答案中加入了您的评论,以使答案更有用。
Susam Pal

也没有为我工作。与杰西的答案相同
英国电信
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.