CentOS 源代码编译安装软件

源码编译安装

优点在于,方便安装选定版本,通常对 gcc 版本有要求
例如安装 gcc
https://mirrors.tuna.tsinghua.edu.cn/gnu/gcc/gcc-9.2.0/gcc-9.2.0.tar.gz

  • 下载源码包

需要已经安装 wget
wget https://mirrors.tuna.tsinghua.edu.cn/gnu/gcc/gcc-9.2.0/gcc-9.2.0.tar.gz

  • 解压源码包

mkdir /data/down
cd /data/down/
tar -xf gcc-9.2.0.tar.gz

  • 下载依赖包

cd /data/down/gcc-9.2.0
vi contrib/download_prerequisites
base_url='ftp://gcc.gnu.org/pub/gcc/infrastructure/'
->
base_url='http://mirror.linux-ia64.org/gnu/gcc/infrastructure/'
yum -y install bzip2 //解压时需要
bash contrib/download_prerequisites
gmp-6.1.0.tar.bz2: OK
mpfr-3.1.4.tar.bz2: OK
mpc-1.0.3.tar.gz: OK
isl-0.18.tar.bz2: OK
All prerequisites downloaded successfully.

  • 生成 makefile

./configure --enable-checking=release --enable-languages=c,c++ --disable-multilib --build=x86_64-linux

configure是一个可执行脚本,它有很多选项
--prefix 选项是配置安装的路径,如果不配置该选项,安装后:
可执行文件默认放在 /usr /local/bin
库文件默认放在 /usr/local/lib
配置文件默认放在 /usr/local/etc
其它的资源文件放在 /usr /local/share
configure 各项参数详解:
--prefix=/usr/local/gcc-9.2.0/ 所有资源文件都放在该路径下
--enable-checking=release 生成的编译器在编译过程中不做额外检查
--enable-languages=c,c++ 让gcc支持c,c++
--disable-multilib 不生成编译为其他平台可执行代码的交叉编译器
--build=x86_64-linux 如无该项则编译 32 位

  • make

  • make install

耗时甚久

猜你喜欢

转载自www.cnblogs.com/dailycode/p/11879991.html