gcc configure: error: Building GCC requires GMP 4.2+, MPFR 2.3.1+ and MPC 0.8.0

时间:2021-07-28 03:00:19

svn checkout svn://gcc.gnu.org/svn/gcc/trunk拿了GCC的最新代码,打算编译了学东西习学习C++
11的东西,结果在configure的时候出现例如以下问题:

   Building GCC requires GMP 4.2+, MPFR 2.3.1+ and MPC 0.8.0+

   
http://www.multiprecision.org/mpc 下载mpc-0.9.tar.gz      

   ftp://ftp.gnu.org/gnu/gmp/gmp-5.0.1.tar.bz2下载gmp-5.0.1.tar.bz2

   http://ftp.gnu.org/gnu/mpfr/下载mpfr-3.1.0.tar.xz。

     先開始安装GMP。解压GMP的压缩包后,得到源码文件夹gmp-5.0.1。在该文件夹的同级文件夹下建立一个暂时的编译文件夹,这里命名为temp。然后開始配置安装选项,进入temp文件夹,输入下面命令进行配置:

  ../gmp-5.0.1/configure --prefix=/usr/local/gmp-5.0.1

make

sudo make install

mpfr和mpc的安装方法与gmp类似。只是要注意配置的时候要把gmp与mpfr的依赖关系选项加进去,详细配置命令例如以下:

  ../mpfr-3.1.0/configure --prefix=/usr/local/mpfr-3.1.0 --with-gmp=/usr/local/gmp-5.0.1

  ../mpc-0.9/configure --prefix=/usr/local/mpc-0.9 --with-gmp=/usr/local/gmp-5.0.1 --with-mpfr=/usr/local/mpfr-3.1.0

  安装好这三个库之后,就能够正式開始安装gcc了。

当然了链接的时候,须要刚刚编译的3个lib。

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc-0.9/lib:/usr/local/gmp-5.0.1/lib:/usr/local/mpfr-3.1.0/lib 

然后是典型的configure,make,install三步曲。

../gcc-4.7.2/configure --prefix=/usr/local/gcc-4.7 --enable-threads=posix --disable-checking --disable-multilib --enable-languages=c,c++ --with-gmp=/usr/local/gmp-5.0.1 --with-mpfr=/usr/local/mpfr-3.1.0
--with-mpc=/usr/local/mpc-0.9

make

make check(可选)

sudo make install

经过漫长的等待:

/usr/local/gcc-4.7/bin/g++ -v

使用内建 specs。

COLLECT_GCC=/usr/local/gcc-4.7/bin/g++

COLLECT_LTO_WRAPPER=/usr/local/gcc-4.7/libexec/gcc/x86_64-unknown-linux-gnu/4.7.0/lto-wrapper

目标:x86_64-unknown-linux-gnu

配置为:../gcc-4.7.2/configure --prefix=/usr/local/gcc-4.7 --enable-threads=posix --disable-checking --disable-multilib --enable-languages=c,c++ --with-gmp=/usr/local/gmp-5.0.1 --with-mpfr=/usr/local/mpfr-3.1.0 --with-mpc=/usr/local/mpc-0.9

线程模型:posix

gcc 版本号 4.7.0 20120113 (experimental) (GCC)

開始C++ 11学习了。