Centos7源码安装gcc(二)——手动安装依赖包
以gcc-5.5.0编译安装为例:
参考链接:https://www.cnblogs.com/chillax1314/articles/11095950.html
1、前置条件
已安装低版本gcc,gcc-g++
2、编译安装
tar -zxf gcc-5.5.0.tar.gz
mkdir /usr/local/gcc-5.5.0/
gcc-5.5.0/configure --prefix=/usr/local/gcc-5.5.0
如果出现如下错误,说明缺少依赖库GMP、MPFR、MPC
1)安装GMP4.3.2
wget ftp://gcc.gnu.org/pub/gcc/infrastructure/gmp-4.3.2.tar.bz2
tar jxvf gmp-4.3.2.tar.bz2
mkdir /usr/local/gmp-4.3.2
gmp-4.3.2/configure -prefix=/usr/local/gmp-4.3.2
make -j 32
make install
2)安装MPFR2.4.2
wget ftp://gcc.gnu.org/pub/gcc/infrastructure/mpfr-2.4.2.tar.bz2
tar -jxvf mpfr-2.4.2.tar.bz2
mkdir /usr/local/mpfr-2.4.2
cd /usr/local/mpfr-2.4.2
mpfr-2.4.2/configure --prefix=/usr/local/mpfr-2.4.2 --with-gmp=/usr/local/gmp-4.3.2
make -j 32
make install
3)安装MPC0.8.1
wget ftp://gcc.gnu.org/pub/gcc/infrastructure/mpc-0.8.1.tar.gz
tar -zxf mpc-0.8.1.tar.gz
mkdir /usr/local/mpc-0.8.1
mpc-0.8.1/configure --prefix=/usr/local/mpc-0.8.1 --with-gmp=/usr/local/gmp-4.3.2 --with-mpfr=/usr/local/mpfr-2.4.2
make -j 32
make install
4)添加环境变量
# vim /etc/profile.d/software.sh,添加以下内容:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc-0.8.1/lib:/usr/local/gmp-4.3.2/lib:/usr/local/mpfr-2.4.2/lib
source /etc/profile.d/software.sh
5)再次配置GCC
/opt/gcc-5.3.0/configure --prefix=/usr/local/gcc-5.5.0 -enable-threads=posix -disable-checking -disable-multilib -enable-languages=c,c++ --with-gmp=/usr/local/gmp-4.3.2 --with-mpfr=/usr/local/mpfr-2.4.2 --with-mpc=/usr/local/mpc-0.8.1
6)编译
make -j 32
7)安装
make install
8)制作软链接
请确保PATH中 /usr/local/bin 在原gcc路径之前
ln -s /usr/local/gcc-5.5.0/bin/gcc /usr/local/bin/gcc
ln -s /usr/local/gcc-5.5.0/bin/g++ /usr/local/bin/g++
9)添加环境变量
# vim /etc/profile.d/software.sh
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/gcc-5.5.0/lib:/usr/local/gcc-5.5.0/lib64
3、问题解决
1)在make 时报错:configure: error: cannot compute suffix of object files: cannot compile
-
vim /etc/profile.d/software.sh
,添加以下内容:export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc-0.8.1/lib:/usr/local/gmp-4.3.2/lib:/usr/local/mpfr-2.4.2/lib
-
source /etc/profile.d/software.sh
2)编译GCC 报错:configure: error: error verifying int64_t uses long long
没有安装g++所致,可在线安装 yum install -y gcc-g++
,或离线安装rpm包 yum --downloadonly --downloaddir=./ install -y gcc-c++
3)在configure报错:error: No usable m4 in $PATH or /usr/5bin (see config.log for reasons)
说明没有安装m4,使用 yum install m4
,然后再执行即可
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程使用 AI 从 0 到 1 写了个小工具
· 快收藏!一个技巧从此不再搞混缓存穿透和缓存击穿
· AI 插件第二弹,更强更好用
· Blazor Hybrid适配到HarmonyOS系统
· 支付宝 IoT 设备入门宝典(下)设备经营篇
2021-07-07 exec()内置方法