使用gem5时需要更换内核,但是编译内核需要低版本的GCC。原系统gcc版本是5.6.0,需要更换成gcc4.4.0.
在编译安装gcc过程中出错,error: Building GCC requires GMP 4.2+, MPFR 2.3.1+ and MPC 0.8.0
,出错原因是需要这些库的支持,所以解决方法就是寻找相应的源码库安装即可,下面是解决方法。
首先下载GMP、MPC、MPFR源码库:
- 下载GMP
直接使用命令:
wget ftp://ftp.gnu.org/gnu/gmp/gmp-5.0.1.tar.bz2
;即可下载到本地。 下载MPC
打开http://www.multiprecision.org/mpc,下载mpc-1.1.0.tar.gz下载MPFR
http://ftp.gnu.org/gnu/mpfr/; 下载mpfr-3.1.4.tar.xz
安装各个库。
注意安装顺序,因为依赖问题,所以首先安装GMP,然后是MPFR,然后是MPC
下面是每一个库的安装过程:
1、安装GMP
1. 创建安装目录:
mkdir /opt/gmp5.0.1
2. 解压缩源码包
tar -jxvf gmp-5.0.1.tar.bz2
3. 进入源码文件夹,执行配置
cd gmp-5.0.1
./configure --prefix=/opt/gmp-5.0.1 --build=x86_64-linux
sudo make && make install
在安装GMP过程会出现一些小错误,不影响最后的编译。
2、安装MPFR
mkdir /opt/mpfr-3.1.4
tar -zxvf mpfr-3.1.4.tar.xz
cd mpfr-3.1.4
./configure --prefix=/opt/mpfr-3.1.4 --with-gmp=/opt/gmp-5.0.1 --build=x86_64-linux
sudo make && make install
3、安装MPC
mkdir /opt/mpc-1.1.0
tar -zxvf mpc-1.1.0.tar.gz
cd mpc-1.1.0
./configure --prefix=/opt/mpc-1.1.0 --with-gmp=/opt/gmp-5.0.1 -with-mpfr=/opt/mpfr-3.1.4 --build=x86_64-linux
sudo make && make install
4、配置刚刚安装好的库路径
配置好如上的过程,就可以接着编译安装gcc了。
export LD_LIBRARY_PATH=/opt/gmp-5.0.1/lib:/opt/mpfr-3.1.4/lib/:/opt/mpc-1.1.0:$LD_LIBRARY_PATH
tar -jxvf gcc-4.4.0.tar.bz2
mkdir /opt/gcc-4.4.0
cd gcc-4.4.0
./configure --prefix=/opt/gcc-4.4.0 --enable-threads=posix --disable-checking --disable-multilib --enable-languages=c,c++ --with-gmp=/opt/gmp-5.0.1 --with-mpfr=/opt/mpfr-3.1.4 --with-mpc=/opt/mpc-1.1.0 --build=x86_64-linux
sudo make -j4 && make install
5、经过漫长的等待,最后验证
/opt/gcc-4.4.0/bin/gcc -v
似乎没成功!伤心了!
不过有另一种方法,不要着急!!!
见这一篇博客!!