1.安装gcc之前要安装gmp,mpfr,mpc,isl这几个库,而且要卸载旧的gcc,但是我们须要在最后安装gcc之前再卸载旧的gcc,由于安装必需的库时须要旧的gcc。
方式一:直接安装
sudo apt-get install build-essential libgmp-dev libmpfr-dev libmpc-dev
技巧二:源码编译安装
安装gmp:去官网下载最新的包linux系统下载官网,然后直接解压到想要安装的位置。安装步骤如下
$ cd gmp-6.1.2/
$ mkdir build
$ cd build/
$ ../configure -prefix=/usr/local/gmp-6.1.2
$ make -j12
$ sudo make install
我们把gmp安装在了/usr/local目录下,使用参数-j12是可以调用多线程加速编译的过程。
安装mpfr:同样是在官网下载最新的包,而后解压,安装步骤类似上一步:
$ cd mpfr-4.0.1/
$ mkdir build
$ cd build/
$ ../configure --prefix=/usr/local/mpfr-4.0.1 --with-gmp=/usr/local/gmp-6.1.2
$ make -j12
$ sudo make install
由于用到了上一步安装的gmp,因而mpfr的安装需置于gmp以后
安装mpc:步骤仍然同上,源码在官网。
$ cd mpc-1.1.0/
$ mkdir build
$ cd build/
$ ../configure -prefix=/usr/local/mpc-1.1.0 -with-gmp=/usr/local/gmp-6.1.2 -with-mpfr=/usr/local/mpfr-4.0.1
$ make -j12
$ sudo make install
同时用到了gmp和mpfr。
安装isl:虽然这一步不是必需的,并且我在某一步被卡住,之后发觉是用到了isl库中的一个头文件,因而才安装这个库。isl的官网没有找到,并且有一个ftp上可以下载。
$ cd isl-0.18/
$ mkdir build
$ cd build/
$ ../configure --prefix=/usr/local/isl-0.18 --with-gmp=/usr/local/gmp-6.1.2
$ make -j12
$ sudo make install
只用到了gmp。
2.安装gcc6.3
总算到了我们的目标,gcc6.3,首先我们须要卸载旧的gcc
sudo update-alternatives --remove-all gcc
这一步会将gcc和g++相关卸载。接出来我们须要在环境变量里配置一下刚才安装的几个库。
$ gedit ~/.bashrc
之后在最后加一行
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc-1.1.0/lib:/usr/local/gmp-6.1.2/lib:/usr/local/mpfr-4.0.1/lib:/usr/local/isl-0.18/lib:/usr/local/lib:/usr/lib/x86_64-linux-gnu
若果不进行前面一步的话,可能会出现如下的错误
checking for suffix of object files... configure: error: in '/home/manu/gcc/gcc/i686-pc-linux-gnu/libgcc':
configure: error: cannot compute suffix of object files: cannot compile
See 'config.log' for more details.
通常缺乏库就会形成这样的错误,我们须要打开config.log进行具体查看。之前没有安装isl库的时侯才会在log文件中显示下来,而终端并没有显示具体的error(终端中不一定显示)。
接出来就是编译安装gcc6.3,源码在官网的镜像里可以找到linux下安装cmake教程,随意选一个ftp服务器,之后在releases分支里找到gcc6.3下载(),然后解压。
GCC下载链接linux系统下载,依次选择
$ cd gcc-6.3.0/
$ mkdir build
$ cd build/
$ ../configure --prefix=/usr/local/gcc-6.3 --disable-multilib --with-system-zlib --enable-languages=c,c++ --with-gmp=/usr/local/gmp-6.1.2 --with-mpfr=/usr/local/mpfr-4.0.1 --with-mpc=/usr/local/mpc-1.1.0 --with-isl=/usr/local/isl-0.18
$ make -j12
$ sudo make install
假如你须要gcc编译其他语言的话,可以在languages那儿添加。make的过程十分漫长linux下安装cmake教程,即使我用了12个线程跑,也花了10分钟左右。
由于我们删掉了gcc的链接,因而为了更便捷地使用gcc,须要重新链接
$ cd /usr/bin
$ sudo ln -s /usr/local/gcc-6.3/bin/gcc gcc
$ sudo ln -s /usr/local/gcc-6.3/bin/g++ g++
最后检测一下gcc的版本
$ gcc -v
安装gcc8.2链接:
多个gcc版本切换:
安装cmake-3.13
安装教程: