因工作需要,需要安装libFuzzer库,对项目做Fuzz testing。libFuzzer作为clang(llvm)的一部分,其编译需要gcc-4.8.0以上版本的支持,因此需要在编译服务器上安装4.8.0以上版本的gcc。由于没有编译服务器的root权限,因此需要将gcc安装在用户目录下。
gcc依赖三个包,分别是是mpc、gmp、mpfr,下载地址依次为:
ftp://ftp.gnu.org/gnu/mpc/mpc-1.0.2.tar.gz
ftp://ftp.gnu.org/gnu/gmp/gmp-5.0.1.tar.bz2
http://ftp.gnu.org/gnu/mpfr/mpfr-3.1.2.tar.gz
安装的顺序依次为:gmp,mpfr, mpc,最后安装gcc。
1、安装GMP-5.0.1.
这里选择的是GMP5.0.1版本,解压gmp-5.0.1后,得到源代码目录,创建一个临时编译目录tmp,输入以下命令。
$ tar -jxvf gmp-5.0.1.tar.bz2
$ cd gmp-5.0.1
$ mkdir tmp
$ cd tmp
进入tmp目录,开始配置安装目录,输入以下命令:
$ ../configure --prefix=/home/hnie/local/gmp-5.0.1
$ make
$ make install
需要注意的是,因为我的用户权限是user,非root用户,因此将安装目录配置到我的个人目录下。
这样gmp就安装完成了。安装mpfr和mpc过程也差不多,只是安装的时候得加入依赖项