亚马逊EC2升级g++版本

亚马逊EC2自带的g++是4.8,比较老的版本,许多新的代码都编译不了。因此需要升级g++。

升级方法如下:
1、安装依赖

sudo yum install libmpc-devel mpfr-devel gmp-devel

2、获得源码
以获得5.4.0的源码为例

cd /tmp
curl -o "gcc-5.4.0.tar.gz" https://ftp.gnu.org/gnu/gcc/gcc-5.4.0/gcc-5.4.0.tar.gz
tar -xvzf gcc-5.4.0.tar.gz

如果你想获得其他版本,可以去这个网站https://ftp.gnu.org/gnu/gcc查看,然后修改版本号就行,比如将5.4.0修改为5.5.0

3、配置和编译

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

4、安装

sudo make install 

上面就是安装完成了,可以使用

g++ -v

查看当前使用的g++版本,如果没有变成你想要的版本,那是因为软链接的问题。

首先使用

which g++

查看当前使用g++的具体路径,很有可能给出的路径是/usr/bin/g++

实际上,你刚刚安装的g++是在/usr/local/bin中的,而使用ll /usr/bin/g++会发现这是个软链接,并且指向的位置并不是咱们刚刚安装的g++,所以我们只要将这个软件删除,重新建一个指向咱们新安装的g++即可。具体:

cd /usr/bin
sudo rm g++
ln -s /usr/local/bin/g++ g++

此时再使用g++ -v就发现使用的是咱们刚刚安装的版本了。

同样的,使用相同的方法修改gcc。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章