解决类似运行报错: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21‘ not found 的问题

正文前言:

遇到这个问题的时候就是需要升级GCC了,然后我下载的时候服务器的NDS配置的无法正常下载,我给它修改成了:

nameserver 8.8.8.8
nameserver 8.8.4.4

当时的报错信息是:wget: unable to resolve host address ‘gcc.gnu.org’

修改参考此文章:

下载内容报错wget: unable to resolve host address-CSDN博客在系统提示符号输入vi及文件名称后,进入vi之后,是处于「命令行模式(command mode)」,您要切换到「插入模式(Insert mode)」才能够输入文字。在「命令行模式(command mode)」下按一下字母「i」就可以进入「插入模式(Insert mode)」,这时候你就可以开始输入文字了。处于「插入模式(Insert mode)」按一下「ESC」键转到「命令行模式(command mode)」或者(听说这个是新版的linux使用,上面为老版): wq (输入「wq」,存盘并退出vi)https://blog.csdn.net/weixin_55499427/article/details/138904054?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22138904054%22%2C%22source%22%3A%22weixin_55499427%22%7D

升级GCC的时候需要下载相应的依赖库,否则就会出现这样的错误:

configure: error: Building GCC requires GMP 4.2+, MPFR 3.1.0+ and MPC 0.8.0+.

处理方式参考此文章:

GCC 版本升级 (源码编译): configure: error: Building GCC requires GMP 4.2+, MPFR 3.1.0+ and MPC 0.8.0+icon-default.png?t=N7T8https://blog.csdn.net/weixin_55499427/article/details/138903813?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22138903813%22%2C%22source%22%3A%22weixin_55499427%22%7D

如果上述情况都已处理,那么接下来,进入正文:

1.下载最新版的GCC

可以直接从 GCC, the GNU Compiler Collection 下载最新版本的 GCC 源码压缩包,在这里我通过 wget命令从GCC mirror sites 服务器下载当前最新版本 GCC 源码压缩包。

wget http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-13.1.0/gcc-13.1.0.tar.gz

2.编译安装 GCC

详细的 configure 参数设置可以参考:Installing GCC: Configuration,这里我没有设置过多的参数。

注:/root/hj 为我自己服务器的绝对路径,各位可以按需修改;另外看不懂这里configure下面内容意思的可以参考我上面下载安装GCC依赖库的文章

tar -xvzf gcc-13.1.0.tar.gz
cd gcc-13.1.0

./configure \
    --disable-multilib \
    --prefix=$(pwd)/ \
    --with-gmp-include=/root/hj/gmp-6.2.1/include \
    --with-gmp-lib=/root/hj/gmp-6.2.1/lib \
    --with-mpfr-include=/root/hj/mpfr-4.1.0/include \
    --with-mpfr-lib=/root/hj/mpfr-4.1.0/lib \
    --with-mpc-include=/root/hj/mpc-1.2.1/include \
    --with-mpc-lib=/root/hj/mpc-1.2.1/lib \

make -j4
make install

如果在make的过程遇见 # error GATHER_STATISTICS must be defined 这个错误,则只需通过在终端运行export CPLUS_INCLUDE_PATH= 命令暂时的清除CPLUS_INCLUDE_PATH 变量即可。

3环境变量的配置

安装完 GCC 之后,我们需要将其配置到系统的环境变量中,如果需要长久生效,则需要将下面内容添加到 ~/.bashrc中即可。也可以通过构建软链接的方式替换成老版本的GCC。

export PATH=/root/hj/gcc-13.1.0/bin:$PATH
export LIBRARY_PATH=/root/hj/gcc-13.1.0/lib64:$LIBRARY_PATH
export LD_LIBRARY_PATH=/root/hj/gcc-13.1.0/lib64:$LD_LIBRARY_PATH
export C_INCLUDE_PATH=/root/hj/gcc-13.1.0/include:$C_INCLUDE_PATH
export CPLUS_INCLUDE_PATH=/root/hj/gcc-13.1.0/include:$CPLUS_INCLUDE_PATH

此文大部分参考了:GCC 版本升级 (源码编译): configure: error: Building GCC requires GMP 4.2+, MPFR 3.1.0+ and MPC 0.8.0+ - 知乎 (zhihu.com)

算是对前辈们经验的整合,把我遇到的各种问题都在这一篇文章当中解决了。

希望对各位有用

  • 28
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值