环境: 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 http://www.multiprecision.org/mpc
准备工作:
1. 编译安装 gmp
tar -zxvf gmp-5.1.3.tar.gz
cd gmp-5.1.3
./configure
make && make install
- 编译安装 mpfr
tar -zxvf mpfr-3.1.2.tar.gz
cd mpfr-3.1.2
./configure
make && make install
- 编译安装 mpc
tar -zxvf mpc-1.0.tar.gz
cd mpc-1.0
./configure
make && make install
1.首先下载源代码
wgethttp://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 -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'
/home/liukk/gcc-4.8.1’
make[1]: \*** [stage1-bubble] Error 2
make[1]: Leaving directory
make: *** [all] Error 2
解决办法:
安装如下内容:
yum install gcc-c++