ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

解决 'GLIBCXX_3.4.XX' not found

2022-07-01 13:05:52  阅读:153  来源: 互联网

标签:GLIBCXX gcc tar -- XX 3.4 home gmp local


在Centos上启动某程序的时候报GLIBCXX_3.4.** not found的错误,记录解决错误的过程

  1. 先查看当前系统c++库包含的版本,有没有包含错误提示的版本
[root@localhost [10.10.60.21] /]# strings /usr/lib64/libstdc++.so.6 |grep GLIBC
GLIBCXX_3.4
GLIBCXX_3.4.1
   ......
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
[root@localhost [10.10.60.21] /]# 
  1. 安装gcc5.5.0
wget ftp://ftp.mirrorservice.org/sites/sourceware.org/pub/gcc/releases/gcc-5.5.0/gcc-5.5.0.tar.gz
tar -zxvf gcc-5.5.0.tar.gz
cd gcc-5.5.0
./configure \
    --prefix=/home/xxx/local/gcc5.5.0 \   # 指定安装路径
    --enable-checking=release \         # 生成的编译器在编译过程中不做额外检查
    --enable-languages=c,c++,java \     # 支持的语言
    --enable-threads=posix \            # 使用POSIX/Unix98作为线程支持库
    --disable-multilib                  # 不生成编译为其他平台可执行代码的交叉编译器
# make耗时较长,半小时起步,安排好时间
make -j4
make install
  1. 安装问题
    安装gcc过程中可能会遇到以下问题,没有问题则进行下一步
configure: error: Building GCC requires GMP 4.2+, MPFR 2.4.0+ and MPC 0.8.0+.

错误信息中说明,安装gcc需要这三个依赖:GMP 4.2+, MPFR 2.4.0+ and MPC 0.8.0+;在错误信息中,提示了下载页面的地址:ftp://gcc.gnu.org/pub/gcc/infrastructure/

wget ftp://gcc.gnu.org/pub/gcc/infrastructure/gmp-6.1.0.tar.bz2
wget ftp://gcc.gnu.org/pub/gcc/infrastructure/mpfr-3.1.4.tar.bz2
wget ftp://gcc.gnu.org/pub/gcc/infrastructure/mpc-1.0.3.tar.gz

因为彼此存在相互依赖,所以安装的顺序依次为:gmp,mpfr,mpc

## 非root用户,因此将安装目录配置到用户目录下
## 未指定将会安装到 /usr/local/lib 目录下

#### 安装GMP
##################################
tar -jxvf gmp-6.1.0.tar.bz2
cd gmp-6.1.0
./configure  --prefix=/home/xxx/local/gmp-6.1.0
make
sudo make install

#### 安装MPFR
##################################
tar -jxvf mpfr-3.1.4.tar.bz2
cd mpfr-3.1.4
./configure  --prefix=/home/xxx/local/mpfr-3.1.4 \
             --with-gmp=/home/xxx/local/gmp-6.1.0
make 
sudo make install

#### 安装MPC
##################################
tar -zxvf mpc-1.0.3.tar.gz
cd mpc-1.0.3
./configure  --prefix=/home/xxx/local/mpc-1.0.3 \
             --with-gmp=/home/xxx/local/gmp-6.1.0 \
             --with-mpfr=/home/xxx/local/mpfr-3.1.4
make 
sudo make install

加入环境变量
/etc/profile里面加上以下内容:

  • gmp, mpfr, mpc都是使用默许参数安装的,没指定任何参数
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
  • 安装时指定了安装目录
export LD_LIBRARY_PATH=/home/xxx/local/mpc-1.0.3/mpc_install/lib:/home/xxx/local/gmp-6.1.0/gmp_install/lib:/home/xxx/local/mpfr-3.1.4/mpfr_install/lib:$LD_LIBRARY_PATH

重新加载配置文件source /etc/profile

  1. gcc加入环境变量
export LD_LIBRARY_PATH=home/xxx/local/gcc5.5.0/lib64:$LD_LIBRARY_PATH

标签:GLIBCXX,gcc,tar,--,XX,3.4,home,gmp,local
来源: https://www.cnblogs.com/huizhipeng/p/16434212.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有