Linux系统中安装KenLM步骤及注意事项

一、前言:

  • Kenlm模型:本项目基于Kenlm统计语言模型工具训练了中文NGram语言模型,结合规则方法、混淆集可以纠正中文拼写错误,方法速度快,扩展性强,效果一般

二、安装步骤:

1、安装依赖项

KenLM的编译需要一些依赖项,包括CMake、Boost库、bzip2等。您可以使用系统的包管理器来安装这些依赖项。

安装CMake

对于Debian/Ubuntu系统,可以使用以下命令:

sudo apt-get install cmake

对于CentOS/RHEL系统,可以使用以下命令: 

sudo yum install cmake
安装Boost库

对于Debian/Ubuntu系统,可以使用以下命令:

sudo apt-get install libboost-all-dev

对于CentOS/RHEL系统,可以使用以下命令:

sudo yum install boost-devel boost-test boost
安装bzip2

对于Debian/Ubuntu系统,可以使用以下命令:

sudo apt-get install bzip2 libbz2-dev

对于CentOS/RHEL系统,可以使用以下命令:

sudo yum install bzip2 bzip2-devel

2、下载并编译KenLM

下载KenLM源代码

您可以从KenLM的官方网站(http://kheafield.com/code/kenlm/)下载源代码,或者使用wget命令直接从命令行下载:

wget -O - https://kheafield.com/code/kenlm.tar.gz | tar xz
创建构建目录并编译

解压源代码后,进入KenLM的源代码目录,并创建一个构建目录

cd kenlm  
mkdir build  
cd build

使用CMake进行配置,并生成Makefile:

cmake ..

 出错:

-- The C compiler identification is GNU 9.4.0
-- The CXX compiler identification is unknown
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
CMake Error at CMakeLists.txt:14 (project):
  No CMAKE_CXX_COMPILER could be found.

  Tell CMake where to find the compiler by setting either the environment
  variable "CXX" or the CMake cache entry CMAKE_CXX_COMPILER to the full path
  to the compiler, or to the compiler name if it is in the PATH.


-- Configuring incomplete, errors occurred!
See also "/root/app/text_detection/utility/kenlm/build/CMakeFiles/CMakeOutput.log".
See also "/root/app/text_detection/utility/kenlm/build/CMakeFiles/CMakeError.log".

 这个错误信息表明CMake在配置过程中未能找到C++编译器(CXX编译器)。尽管C编译器(/usr/bin/cc)被成功检测到并工作正常,但CMake需要C++编译器来编译KenLM中的C++代码。

要解决这个问题,请按照以下步骤操作:

在大多数Linux发行版中,GCC编译器套件同时包含C和C++编译器。如果您的系统中安装了GCC,那么通常也会安装g++作为C++编译器。

g++ --version

您可以通过运行上方命令来检查它是否已安装。

如果没有安装,运行:

apt install g++

再编译:

cmake ..

使用make命令进行编译:

make -j$(nproc) # 使用所有可用的CPU核心进行编译
 ​安装KenLM

编译完成后,您可以使用make install命令将KenLM安装到系统路径中(通常需要root权限):

sudo make install

3、验证安装

您可以通过运行KenLM的二进制文件来验证安装是否成功。例如,您可以尝试运行lmplz命令(这是KenLM中的一个工具,用于创建语言模型):

lmplz --help

4、配置环境变量(可选)

如果您希望在不使用sudo的情况下运行KenLM的二进制文件,您可能需要将KenLM的安装目录添加到您的PATH环境变量中。这可以通过编辑您的shell配置文件(如/.bashrc或/.zshrc)来实现:

export PATH=/usr/local/bin:$PATH  # 假设KenLM安装在/usr/local/bin目录中  
source ~/.bashrc  # 或~/.zshrc,取决于您使用的shell

注意:路径和命令可能因您的系统配置和KenLM的版本而有所不同。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值