centos6.7 安装 gcc-4.9.2

环境: CentOS-6.7 , gcc-4.4.7 系统必须已经安装有一个编译器,因为 gcc也是需要编译的,建议用root进行安装




一、准备工作

(做完才发现:联网的话,这步可以先跳过,直接进入下一步安装gcc):


首先 gcc 编译需要三个额外库,下载并按照下面的顺序安装它们,如下:
1. mpfr    http://ftp.gnu.org/gnu/mpfr/
2. gmp    http://ftp.gnu.org/gnu/gmp/
3. mpc    http://ftp.gnu.org/gnu/mpc/


1. 编译安装 gmp
# wget http://ftp.gnu.org/gnu/gmp/gmp-6.1.2.tar.lz


# yum -y install lzip


#lzip -d gmp-6.1.2.tar.lz


# tar -xvf gmp-6.1.2.tar


# cd gmp-6.1.2


# ./configure


# make && make install


2. 编译安装 mpfr
# wget http://ftp.gnu.org/gnu/mpfr/mpfr-3.1.5.tar.gz


# tar -zxvf mpfr-3.1.5.tar.gz


# cd mpfr-3.1.2


# ./configure


# make && make install 


3. 编译安装 mpc
# wget http://ftp.gnu.org/gnu/mpc/mpc-1.0.3.tar.gz


# tar -zxvf mpc-1.0.3.tar.gz


# cd mpc-1.0.3


# ./configure


# make && make install


二、安装gcc:


1.首先下载源代码
# wget http://ftp.gnu.org/gnu/gcc/gcc-4.9.2/gcc-4.9.2.tar.bz2


2.解压
# tar -jxvf gcc-4.9.2.tar.bz2


3.下载编译所需的依赖项
# cd gcc-4.9.2 
  
# ./contrib/download_prerequisites 

# cd ..


 4.建立编译输出目录
# mkdir gcc-build-4.9.2


 5.进入此目录,执行以下命令,生成makefile文件
# cd gcc-build-4.9.2


# ../gcc-4.9.2/configure --enable-checking=release --enable-languages=c,c++ --disable-multilib


gcc 编译参数说明:


--enable-languages        //指定 gcc 能编译哪些语言的文件,每种语言用逗号分隔, 例如 c,c++,java


--disable-multilib          //默认gcc 能在32位系统上将代码编译成64位程序,或者在64位系统上编译成32位程序,如果加上这个编译选项则表示关闭这个gcc的交叉编译功能。


 6.执行以下命令进行编译
# make -j2          //机器是双核,故用j2能加快编译速度


7、安装:


# make install


8、指定版本:


现在gcc4.9.2安装完成了,但是gcc4.8.2的环境变量还没有设置,系统中使用的还是旧版的gcc。


刚刚我们把gcc4.9.2安装在/usr/local/bin/gcc-4.9.4下,如果不知道的话可以通过下边这步查找一下。


确定新安装的GCC的路径,可以先updatedb,然后locate gcc-4.9 |tail找一下。
[root@bogon gcc-build-4.9.2]# updatedb
[root@bogon gcc-build-4.9.2]# locate gcc-4.9 |tail
/usr/local/bin/gcc-4.9.4/share/man/man7/fsf-funding.7
/usr/local/bin/gcc-4.9.4/share/man/man7/gfdl.7
/usr/local/bin/gcc-4.9.4/share/man/man7/gpl.7
/usr/local/share/gcc-4.9.2
/usr/local/share/gcc-4.9.2/python
/usr/local/share/gcc-4.9.2/python/libstdcxx
/usr/local/share/gcc-4.9.2/python/libstdcxx/__init__.py
/usr/local/share/gcc-4.9.2/python/libstdcxx/v6
/usr/local/share/gcc-4.9.2/python/libstdcxx/v6/__init__.py
/usr/local/share/gcc-4.9.2/python/libstdcxx/v6/printers.py


查看gcc4.9.2信息如下
[root@bogon gcc-build-4.9.2]# ls /usr/local/bin/gcc-4.9.4/bin | grep gcc
gcc
gcc-ar
gcc-nm
gcc-ranlib
x86_64-unknown-linux-gnu-gcc
x86_64-unknown-linux-gnu-gcc-4.9.4
x86_64-unknown-linux-gnu-gcc-ar
x86_64-unknown-linux-gnu-gcc-nm
x86_64-unknown-linux-gnu-gcc-ranlib


设置使用新版的gcc4.9的方法很简单,设置软链接即可
[root@bogon usr]# mkdir /usr/gcc447backup/
[root@bogon usr]# mv /usr/bin/{gcc,g++} /usr/gcc447backup
[root@bogon usr]# ln -s /usr/local/bin/gcc-4.9.4/bin/gcc  /usr/bin/gcc
[root@bogon usr]# ln -s /usr/local/bin/gcc-4.9.4/bin/g++  /usr/bin/g++
[root@bogon usr]# gcc -v
Using built-in specs.
COLLECT_GCC=gcc
Target: x86_64-unknown-linux-gnu
Configured with: ../gcc-4.9.4-source/gcc-4.9.4/configure --enable-languages=c,c++,fortran --enable-checking=release --disable-libmudflap --disable-libstdcxx-pch --enable-libgomp --enable-lto --enable-gold --with-plugin-ld=gold --with-cloog-include=/usr/include-cloog --with-cloog-lib=/usr/lib64 --prefix=/usr/local/gcc-4.9.4
Thread model: posix
gcc version 4.9.4 (GCC) 


对于下载的是4.9.2,安装出来的是4.9.4,目前我也很疑惑,哪位知道原因的,希望各位大虾多多指教啊!


参考:http://www.cnblogs.com/codemood/archive/2013/06/01/3113200.html
http://blog.csdn.net/windows_nt/article/details/21240843
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值