如何在Linux下手动编译安装gcc

如果可以通过apt来安装的话,尽量不要手工编译了,手工编译是最后的选择。用apt安装,只需要输入一条命令:

sudo apt-get install gcc

手工编译的话,gcc和其他软件包存在如下的依赖关系:

因此各个软件包的安装顺序是m4 --> gmp --> mpfr --> mpc --> gcc。编译之前,请先下载各软件包的源码压缩包。

编译

各个软件包的编译步骤大同小异,这里以m4为例。假设下载的m4文件名为m4-1.4.16.tar.gz,存放在~/gcc_depend目录下。先进入到存放目录,解压:

cd ~/gcc_depend
tar zxvf m4-1.4.16.tar.gz

我们把m4安装到/usr/local目录下。先创建目录,并运行配置文件,生成Makefile

sudo mkdir /usr/local/m4-1.4.16 # 创建安装目录
cd /usr/local/m4-1.4.16 # 切换到安装目录
sudo ~/gcc_depend/m4-1.4.16/configure --prefix=/usr/local/m4-1.4.16 # 通过configure脚本来生成Makefile

编译,这一步在安装目录下完成:

sudo make
sudo make install

编译完成后,检查是否有误:

sudo make check # 编译和运行测试用例

如果所有测试用例都pass了,说明编译成功。
其他软件包的编译过程大致如此,总结为如下几步:

  • 1、解压源码
  • 2、创建安装目录,并切换到安装目录,通过configure脚本来生成Makefile
  • 3、编译
  • 4、检查测试用例

注意事项

  • 1、安装mpfr时,可能会提示找不到gmp,这个时候要在--prefix=安装目录后再加上--with-gmp=/usr/local/gmp-xxx,其中gmp-xxx为gmp安装目录;安装mpc时可能会有同样的问题,也要这样处理。
  • 2、 每次安装完一个包,要把安装目录下的lib目录添加到环境变量LD_LIBRARY_PATH中。
原文地址:https://www.cnblogs.com/jiaxblog/p/9478756.html