centos安装 crf 和 kenlm

安装过程

1. crf安装并指定路径
这里下载
https://taku910.github.io/crfpp/#download

tar -xzf CRF++-0.58.tar.gz
 cd CRF++-0.58

 ./configure
 sudo make
 sudo make install

 cd python/
 sudo python setup.py build
 sudo python setup.py install

# 重新加载一下
sudo rm -f /etc/ld.so.cache
sudo ldconfig

在运行之后报错

在uwsgi中的日志显示是这样的

info 2021-09-06T11:18:11.229216+08:00 l - libcrfpp.so.0: cannot open shared object file: No such file or directory


实际上这个libcrfpp.so.0 是有的,在
/usr/local/lib/libcrfpp.so.0

这个是因为库只是在/usr/lib/下寻找,所以创建个软连接就可以了

ln -s /usr/local/lib/libcrfpp.so.0 /usr/lib/

2.安装kenlm

  在安装完crf之后,之前应该就ok了的,后来发现是kenlm需要安装,之前只是执行了sudo pip install kenlm,这个实际上是不够的,还需要一些其他操作。需要在服务器上编译安装kenlm库。

2.1 在安装kenlm之前需要安装一些别的库

这里参考

1. 安装boost
yum install boost-devel boost-test boost
# 如果boost的依赖包没有安装完整,安装过程中可能会出现以下错误
# /usr/share/cmake/Modules/FindBoost.cmake:1138 (message):   Unable to find the requested Boost libraries

2. 安装 zlib、bzip2和xz
yum install zlib bzip2 xz

3. 安装cmake和make
yum install cmake make
# 我这里安装的cmake 版本过低,还要升级才能编译kenlm

4. 升级cmake
sudo yum remove cmake -y
wget https://cmake.org/files/v3.6/cmake-3.6.2.tar.gz
tar -zxvf cmake-3.6.2.tar.gz
cd cmake-3.6.2
sudo ./bootstrap --prefix=/usr/local
sudo make
sudo make install
vi ~/.bash_profile
PATH=/usr/local/bin:$PATH:$HOME/bin

# 测试
cmake --version
# 显示
cmake version 3.6.2
which cmake
/usr/local/bin/cmake
2.2 安装
wget https://github.com/kpu/kenlm/archive/master.zip
unzip master.zip
cd kenlm
mkdir build
cd build
cmake ..
make -j 4
然后执行
sudo pip install kenlm
或者
pip install https://github.com/kpu/kenlm/archive/master.zip
这里不要用 
python setup.py install 
安装的目录好像有问题

最终要达到的效果是

sudo find /  -name 'kenlm*'
/usr/lib64/python2.7/site-packages/kenlm.so
/usr/lib64/python2.7/site-packages/kenlm-0.0.0-py2.7.egg-info

有这两个库才是正常的,中间因为编译的权限问题,叠加了使用python setup.py install来安装的,报错是

kenlm   [Errno 13] Permission denied: '/root/.cache/Python-Eggs'

这个错报的很奇怪,后来通过重装kenlm解决了

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值