一直用gcc编译各种东西,第一次研究如何编译gcc
这就是一个鸡生蛋与蛋生鸡的问题
编译gcc需要gmp、mpfr和mpc,还需要预先有一个已经能用的gcc
从 http://ftp.gnu.org/gnu/gmp/ 下载一个符合要求的稳定版本的gmp的源码
这里我下载的是 http://ftp.gnu.org/gnu/gmp/gmp-5.0.1.tar.bz2
解压后从源码编译安装
1
2
3
4
5
| tar jxf gmp-5.0.1.tar.bz2
cd gmp-5.0.1
sudo ./configure --prefix=/opt/gmp
sudo make
sudo make install
|
从 http://ftp.gnu.org/gnu/mpfr/ 下载一个稳定版本
我选择的是 http://ftp.gnu.org/gnu/mpfr/mpfr-3.1.4.tar.bz2
1
2
3
4
5
6
7
| tar jxf mpfr-3.1.4.tar.bz2
cd mpfr-3.1.4
sudo ./configure --prefix=/opt/mpfr \
--with-gmp-lib=/opt/gmp/lib \
--with-gmp-include=/opt/gmp/include
sudo make
sudo make install
|
从 http://ftp.gnu.org/gnu/mpc/mpc-1.0.3.tar.gz 下载
我选择的是http://ftp.gnu.org/gnu/mpc/mpc-1.0.3.tar.gz
1
2
3
4
5
6
7
8
9
| tar zxf mpc-1.0.3.tar.gz
cd mpc-1.0.3
sudo ./configure --prefix=/opt/mpc \
--with-gmp-lib=/opt/gmp/lib \
--with-gmp-include=/opt/gmp/include \
--with-mpfr-lib=/opt/mpfr/lib \
--with-mpfr-include=/opt/mpfr/include
sudo make
sudo make install
|
上面依赖安装顺序不能错
后来听曹老师说可以用 apt 直接安装,血亏
1
| sudo apt install libmpc-dev libmpfr-dev libgmp-dev libgmp3-dev
|
又一个后来,发现 gcc 源码中有脚本可以一键下载安装这些依赖
1
| sh ./contrib/download_prerequisites
|
然后进入gcc目录
配置编译配置
1
2
3
4
| ./configure \
--enable-checking=release \
--enable-languages=c,c++ \
--disable-multilib
|
执行 make -j8
然后去喝功夫茶