最近拿了台新机子安装linux环境,安装了ubantu较高版本,谁知道gcc版本太高导致编译不通过,无奈之下只有降级gcc
当前的GCC版本为GCC-4.6,需要切换到GCC-4.2。首先,你需要去你的usr/bin/下去看看有没有gcc-4.5这样文件,如果没有的话,就安装一下吧: 我这里还必须要求是4.2.2囧
稍微搜了一下,下载了gcc4.2.2版本,然后按照正常流程./configure make.
在make的时候出现了cc configure: error: Building GCC requires GMP 4.2+, MPFR 2.3.1+ and MPC 0.8.0+
从错误中可以看出:GCC编译需要GMP, MPFR, MPC这三个库,我使用的版本为gmp-4.3.2,mpfr-2.4.2和mpc-0.8.1。这三个包从下面的地址下载:
http://gmplib.org/,http://www.mpfr.org/,http://www.multiprecision.org/ 理所当然,下载之后重新安装gmp,mpfr和mpc三个库
安装gmp和mpfr我是直接到解压后然后放到gcc的目录里面然后改名为gmp和mpfr即可,我下的这两个包得版本是 gmp-5.0.2.tar.bz2 mpfr-3.1.tar.bz2
安装MPC
1) tar zxvf mpc-0.8.1.tar.gz
2) cd mpc-0.8.1
3) ./configure --with-gmp-include=/usr/local/include --with-gmp-lib=/usr/local/lib
4) make
5) ldconfig -v(出现:error while loading shared libraries: libmpfr.so.1: cannot open shared objec,可以自己去man ldd 和ldconfig)
6) make check
7) make install
1) tar zxvf mpc-0.8.1.tar.gz
2) cd mpc-0.8.1
3) ./configure --with-gmp-include=/usr/local/include --with-gmp-lib=/usr/local/lib
4) make
5) ldconfig -v(出现:error while loading shared libraries: libmpfr.so.1: cannot open shared objec,可以自己去man ldd 和ldconfig)
6) make check
7) make install
之后就是慢慢等了。。。
完了之后给gcc作个软连接
rm /usr/bin/gcc
ln -s /usr/bin/gcc-4.2.2 /usr/bin/gcc