CRF++安装,提示libstdc++.so.6: version `GLIBCXX_3.4.20' not found解决

安装CRF++,

到CRF++网站CRF++: Yet Another CRF toolkit,下载C++源代码安装包(这里用的是 CRF++-0.58.tar.gz ),解压,进入解压文件并如下过程安装

[email protected]:~/DLStudy$ tar -zxvf CRF++-0.58.tar.gz
[email protected]:~/DLStudy$ cd CRF++-0.58/
[email protected]:~/DLStudy/CRF++-0.58$ ./configure
[email protected]:~/DLStudy/CRF++-0.58$ make
[email protected]:~/DLStudy/CRF++-0.58$ sudo make install

在当前文件夹下cd python进入安装python包

[email protected]:~/DLStudy/CRF++-0.57$ cd python/
[email protected]:~/DLStudy/CRF++-0.57/python$ python setup.py build
[email protected]:~/DLStudy/CRF++-0.57/python$ sudo python setup.py install

此时,当我们在Python环境下调用CRFPP时,出现如下错误

[email protected]:~/DLStudy/CRF++-0.57/python$ sudo python
Python 2.7.12 (default, Nov 19 2016, 06:48:10)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import CRFPP
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "CRFPP.py", line 25, in <module>
    _CRFPP = swig_import_helper()
  File "CRFPP.py", line 17, in swig_import_helper
    import _CRFPP
ImportError: /home/hd/anaconda2/lib/libstdc++.so.6: version `GLIBCXX_3.4.20‘ not found (required by /usr/lib/libcrfpp.so.0)
>>>

提示"anaconda2/lib/libstdc++.so.6: version `GLIBCXX_3.4.20‘ not found"

解决方法:

1. 首先查找libstdc++.so.6存在的位置:

[email protected]:~$ sudo find / -name libstdc++.so.6*
/home/hd/anaconda2/lib/libstdc++.so.6.0.19
/home/hd/anaconda2/lib/libstdc++.so.6
/home/hd/anaconda2/pkgs/libgcc-4.8.5-2/lib/libstdc++.so.6.0.19
/home/hd/anaconda2/pkgs/libgcc-4.8.5-2/lib/libstdc++.so.6
find: ‘/run/user/1000/gvfs’: Permission denied
/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21
/usr/lib/x86_64-linux-gnu/libstdc++.so.6
/usr/share/gdb/auto-load/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21-gdb.py

这说明在多个文件夹都存在。

分别检查每个路径下是否存在GLIBCXX_3.4.20.

[email protected]:~$ strings /home/hd/anaconda2/lib/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,这就是为什么前面提示出错的原因

那么在检查/usr/lib/x86_64-linux-gnu/中是否存在,

[email protected]:~$ strings /usr/lib/x86_64-linux-gnu/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_3.4.20
GLIBCXX_3.4.21
GLIBCXX_DEBUG_MESSAGE_LENGTH

 可以发现其中存在GLIBCXX_3.4.20

3. 重新做链接

[email protected]:~$ sudo cp /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.21 /home/hd/anaconda2/lib/[email protected]:~$ sudo rm -rf /home/hd/anaconda2/lib/libstdc++.so.6
[email protected]:~$ sudo ln -s /home/hd/anaconda2/lib/libstdc++.so.6.0.21 /home/hd/anaconda2/lib/libstdc++.so.6

 

4.检查问题是否解决,看是否可以import CRFPP:

[email protected]:~$ sudo python
Python 2.7.12 (default, Nov 19 2016, 06:48:10)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import CRFPP
>>>

此时不在有错误提示。问题解决

更多参考:

关于libstdc++.so.6: version `GLIBCXX_3.4.20‘ not found问题解决

CRF++ 实现中文分词

中文分词入门之字标注法4

CRF++安装,提示libstdc++.so.6: version `GLIBCXX_3.4.20' not found解决

时间: 2024-10-05 14:44:39

CRF++安装,提示libstdc++.so.6: version `GLIBCXX_3.4.20' not found解决的相关文章

/lib64/libstdc++.so.6: version `GLIBCXX_3.4.20&#39; not found

/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

linux下提示/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14&#39; not found 解决办法

1.查看gcc版本中包含哪些库. strings /usr/lib64/libstdc++.so.6 | grep GLIBC 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 GLI

linux系统下的缺失 libstdc++.so.6: version&rsquo;GLIBCXX_3.4.20&rsquo;的问题:

在linux下遇到了一个这样的问题,使用anaconda时,它的安装库里的文件被提示:缺失 libstdc++.so.6: version'GLIBCXX_3.4.20'.后来经过查看资料知道了原来是由于 libstdc++.so.6的版本过低造成的:再重新找一个高版本的就可以了:由于GCC的版本其实很高的,所以呢,我认为我的电脑的其它文件的库文件里应该有比这版本高的:所以,在自己的电脑里找找: 问题解决: 1. 先观察anaconda 文件夹下的库里面的libstdc++.so.6是什么? [

/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14&#39; not found 解决方法

问题重现:当我们运行某一个用C系列语言编译而成的程序的时候,可能会接收到这个错误--这个错误的意思是,没有找到GLIBC版本是3.4.14的相应C++标准库. 问题起源:首先,我们需要清楚,一个程序从被加载之后,需要进行动态链接,而动态链接,需要对应版本的glibc库.但是我们的可执行文件需要哪个版本的glibc库呢? 这个版本问题,已经存在于我们的可执行文件ELF格式中.我们可以用命令这样查看. [22:[email protected]]$>strings numDistinct | gre

Centos 6.6安装google chrome 出现/usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15&#39; not found 蹩脚解决方法

之前安装的google浏览器,不是官方的,而且折腾不天也装不上adobe flash player,无奈又开始研究原版安装方法. 不管使用yum安装还是rpm都报同样错误Requires: libstdc++.so.6(GLIBCXX_3.4.15) 但是之前是升级过gcc的,使用strings /usr/lib/libstdc++.so.6 | grep GLIBC  也可以看到:GLIBCXX_3.4.15 无奈安装总说找不到,后来在网上找到一方发,问题解决: 下载新版本,地址:http:/

Ubuntu安装dlib后import出现libstdc++.so.6: version `GLIBCXX_3.4.21&#39; not found

1 问题描述 先安装依赖包cmake,libboost,再安装dlib sudo apt-get install cmake sudo apt-get install libboost-python-dev sudo pip install dlib 安装后import dlib的时候报错 ImportError: /home/liaohuqiang/anaconda2/bin/../lib/libstdc++.so.6: version `GLIBCXX_3.4.21' not found (

/usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15&#39; not found

32位系统或程序通常为以下错误: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found 以下网址提供32位系统的解决方法: http://www.cnblogs.com/yingsi/p/3290958.html 主要内容如下:这里转帖过来防止以后网址改变找不到了. 下载新版本,地址:http://ftp.de.debian.org/debian/pool/main/g/gcc-4.7/libstdc++6_4.7.2-5_i38

/usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15‘

./filezilla: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by ./filezilla) 如果是64位系统报错信息如下: ./filezilla: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.15' not found (required by ./filezilla) 原因是没有GLIBCXX_3.4.15版本,或是更高的版本.输入命令

/usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.15&#39; not found

/usr/lib/libstdc++.so.6 | grep GLIBC 会输出下面这些内容 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 GLIBC