码迷,mamicode.com
首页 > 编程语言 > 详细

/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found

时间:2020-03-25 13:32:42      阅读:90      评论:0      收藏:0      [点我收藏+]

标签:mat   depend   编译   删除   ror   fast   ln命令   打开   running   

/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20‘ not found问题解决方法
原创libaineu2004 最后发布于2017-08-11 16:59:20 阅读数 25308 收藏
展开
https://pkgs.org/download/libstdc++ 

centos 7 64位系统,本人在升级完gcc7.3.0之后,发现编译项目工程,结果会出错:libstdc++.so.6: version `GLIBCXX_3.4.20‘ not found

解决方法如下:

[root@localhost src]# strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBCXX_DEBUG_MESSAGE_LENGTH

发现少了GLIBCXX_3.4.20,解决方法是升级libstdc++.


[root@localhost ~]# yum provides libstdc++.so.6
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: centos.ustc.edu.cn
 * extras: centos.ustc.edu.cn
 * updates: centos.ustc.edu.cn
libstdc++-4.8.5-11.el7.i686 : GNU Standard C++ Library
Repo        : base
Matched from:
Provides    : libstdc++.so.6
 

[root@localhost ~]# yum install libstdc++-4.8.5-11.el7.i686

 

1、从路径/usr/local/lib64拷贝文件libstdc++.so.6.0.20(或者更高版本,例如libstdc++.so.6.0.24)到路径/usr/lib64

2、删除/usr/lib64原来的软连接libstdc++.so.6 #强烈建议删除之前先备份一份

3、在路径/usr/lib64,打开终端命令行,输入ln命令,重新建立软连接ln libstdc++.so.6.0.20 libstdc++.so.6

4、重新执行strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX

ok!

-----

参考文章:

解决/usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.14‘ not found问题

【解决】缺少libstdc++.so.6库的原因及解决办法

【解决】缺少libstdc++.so.6库的原因及解决办法
原创乾龙_Heron 最后发布于2014-10-15 11:29:44 阅读数 54177 收藏
展开
问题原因:
系统是64bit,该库是32bit的,在64bit系统上安装32bit库

解决办法:
1. 查看哪个安装包包含该库:yum provides libstdc++.so.6
   libstdc++-4.4.7-4.el6.i686
2. 安装 libstdc++-4.4.7-4.el6.i686
    yum install  libstdc++-4.4.7-4.el6.i686
   报错:
--> Finished Dependency Resolution
Error: Protected multilib versions: libstdc++-4.4.7-4.el6.i686 != libstdc++-4.4.7-3.el6.x86_64
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest
    2.1 解决办法:
    yum  update  libstdc++-4.4.7-3.el6.x86_64
然后再执行步骤2的命令

/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found

标签:mat   depend   编译   删除   ror   fast   ln命令   打开   running   

原文地址:https://www.cnblogs.com/alix-1988/p/12565477.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!