环境: CentOS-6.5 , gcc-4.4.7 系统必须已经安装有一个编译器,因为 gcc也是需要编译的,建议用root进行安装
首先 gcc 编译需要三个额外库,下载并按照下面的顺序安装它们,如下:
1. gmp ftp://ftp.gnu.org/gnu/gmp
2. mpfr ftp://ftp.gnu.org/gnu/mpfr
3. mpc
准备工作:
1. 编译安装 gmp
# tar -zxvf gmp-5.1.3.tar.gz
# cd gmp-5.1.3
# ./configure
# make && make install
2. 编译安装 mpfr
# tar -zxvf mpfr-3.1.2.tar.gz
# cd mpfr-3.1.2
# ./configure
# make && make install
3. 编译安装 mpc
# tar -zxvf mpc-1.0.tar.gz
# cd mpc-1.0
# ./configure
# make && make install
1.首先下载源代码
wget
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 -j4 //机器是双核,故用j4能加快编译速度
去喝个咖啡聊聊天,然后就编译好了
期间出现了如下问题
错误一:
configure: error: C++ compiler missing orinoperational
make[2]: \*** [configure-stage1-libcpp]Error 1
make[2]: Leaving directory`/home/liukk/gcc-4.8.1'
make[1]: \*** [stage1-bubble] Error 2
make[1]: Leaving directory `/home/liukk/gcc-4.8.1'
make: \*** [all] Error 2
解决办法:
安装如下内容:
yum install gcc-c++
Linux升级GCC 4.8.1清晰简明教程(Ubuntu 12.04 64位版为例)
GCC 的详细介绍:请点这里