Centos6下编译安装gcc6.4.0

转载自博客园

https://www.cnblogs.com/milton/p/7653760.html

保存学习用。


Centos6自带的gcc4.4.7不支持c++11, 于是编译安装最新版的gcc

wget https://gmplib.org/download/gmp/gmp-6.1.2.tar.xz
tar xvf gmp-6.1.2.tar.xz 
cd gmp-6.1.2
./configure --prefix=/usr/local/gmp
make && make install

wget http://www.mpfr.org/mpfr-current/mpfr-3.1.6.tar.gz
tar xvf mpfr-3.1.6.tar.gz 
cd mpfr-3.1.6
./configure --prefix=/usr/local/mpfr --with-gmp=/usr/local/gmp
make && make install

wget ftp://ftp.gnu.org/gnu/mpc/mpc-1.0.3.tar.gz
tar xvf mpc-1.0.3.tar.gz 
cd mpc-1.0.3
./configure --prefix=/usr/local/mpc --with-gmp=/usr/local/gmp -with-mpfr=/usr/local/mpfr
make && make install

vi /etc/ld.so.conf
#增加以下三行
/usr/local/gmp/lib
/usr/local/mpfr/lib
/usr/local/mpc/lib
#
ldconfig -v

wget ftp://ftp.gnu.org/gnu/gcc/gcc-6.4.0/gcc-6.4.0.tar.gz
tar xvf gcc-6.4.0.tar.gz
./configure --enable-checking=release --enable-languages=c,c++ --disable-multilib --with-gmp=/usr/local/gmp --with-mpfr=/usr/local/mpfr --with-mpc=/usr/local/mpc
make -j2 # 这个过程比较慢, 大概要半个多小时
make install
# 改名 /usr/bin 下的 cpp, c++, gcc, g++, gcov 这些文件, 再执行 gcc --version 就能看到新的版本信息了
Update 2017-10-12: 在将 /usr/bin/gcc 更名后, link到这个文件的 /usr/bin/cc 就失效了, 需要删除, 并在 /usr/local/bin/ 下新建一个到gcc的cc软链


到这里都是转载自博客园作者Milton的内容。


更新升级后的gcc还需要修改连接。不然gcc --version还是以前的版本信息。

按照大部分的文档接下来的切换gcc和g++版本使用的是

sudo updatedb
sudo update-alternatives --install /usr/bin/gcc gcc /opt/app/gcc6/bin/x86_64-pc-linux-gnu-gcc-6.4.0 10086 --slave /usr/bin/g++ g++ /opt/app/gcc6/bin/x86_64-pc-linux-gnu-g++

但是这个命令update-alternatives在目前的系统下无效(系统版本为centos6,没有找到原因!)

因为本来就是为了更改/usr/bin/gcc和/usr/bin/g++软连接

而且又不准备以后再切换回来原来的gcc版本所以就直接使用删除掉原来的gcc/g++连接,重新建立连接到新安装的gcc/g++位置,

本系统下安装的gcc位置为 /opt/app/gcc6

sudo rm /usr/bin/gcc //删除老的软连接
sudo ln -s /opt/app/gcc6/bin/gcc /usr/bin/gcc //创建新的软连接
sudo rm /usr/bin/g++ //删除老的软连接
sudo ln -s /opt/app/gcc6/bin/gcc /usr/bin/g++ //创建新的软连接


源码编译安装GCC可以通过以下步骤进行: 1. 安装依赖库: - 执行命令:`yum install -y epel-release` 安装EPEL源; - 执行命令:`yum install -y vim wget gcc gcc-c make autoconf automake zip bzip2` 安装基础编译软件; - 执行命令:`yum install -y gcc-gnat libgcc libgcc.i686 glibc-devel bison flex m4 texinfo build-essential` 安装其他依赖软件。 2. 下载并解压GCC源码: - 执行命令:`wget -P '/usr/local/src' https://ftp.gnu.org/gnu/gcc/gcc-10.3.0/gcc-10.3.0.tar.gz` 下载GCC源码; - 执行命令:`cd /usr/local/src` 进入下载目录; - 执行命令:`tar -zxvf gcc-10.3.0.tar.gz -C '/usr/local/src'` 解压GCC源码; - 执行命令:`cd gcc-10.3.0` 进入解压后的源码目录。 3. 设置环境变量: - 执行命令:`echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib:/usr/lib64:/usr/local/lib:/usr/local/lib64' >> /etc/profile` 将依赖库路径添加到环境变量中; - 执行命令:`source /etc/profile` 使环境变量立即生效; - 执行命令:`vim /etc/ld.so.conf` 编辑ld.so.conf文件,将GCC依赖的动态链接库路径添加到文件中。 4. 编译安装GCC: - 执行命令:`./configure --prefix=/usr/local/gcc-10.3.0` 配置GCC安装路径; - 执行命令:`make -j$(nproc)` 编译GCC,耗时较长,请保证有足够的时间; - 执行命令:`make install` 安装GCC。 5. 配置GCC的默认版本(可选): - 执行命令:`ln -s /usr/local/gcc-10.3.0/bin/gcc /usr/local/bin/gcc` 创建软链接,将GCC的可执行文件路径添加到系统的PATH环境变量中。 请注意,源码编译安装GCC是一个耗时的过程,根据您的机器性能和网络状况,可能需要几个小时甚至更长时间才能完成编译。确保您有足够的时间和资源来完成这个过程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值