kaldi编译之前切记已经安装Cuda和Cudnn,否则make之后无法用GPU跑DNN
1、 ubuntu18.04更换华为镜像源
cp -a /etc/apt/sources.list /etc/apt/sources.list.bak
sed -i "s@http://.*archive.ubuntu.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list
sed -i "s@http://.*security.ubuntu.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list
apt-get update
apt-get upgrade
2、 获取源码
cd /usr/local
git clone https://github.com/kaldi-asr/kaldi.git kaldi --origin golden
3、 配置编译环境
1)进入tool目录
cd /usr/local/kaldi/tools
2)检测依赖程序是否安装
extras/check_dependencies.sh
4)根据提示安装依赖
sudo apt-get install zlib1g-dev automake autoconf sox gfortran libtool subversion python2.7
# ubuntu18.04自带的python环境为3.6,可通过python3命令进入python环境,如无法直接使用"python"命令,可
sudo apt-get install python
# 检查python命令进入的环境是否为python2.7
5)安装mkl依赖,安装mkl比较慢,稍微等待一会
cd /usr/local/kaldi/tools
extras/install_mkl.sh
说明:x86机器,需要安装的是mkl(输入命令:extras/install_mkl.sh),而鲲鹏机器,则需要安装OpenBLAS。通过vim extras/install_openblas.sh检查OpenBLAS版本,当前下载的版本是0.3.7,但该版本有问题,安装失败,将版本改为0.3.9。
6)安装openfst依赖
cd /usr/local/kaldi/tools
wget http://www.openfst.org/twiki/pub/FST/FstDownload/openfst-1.6.7.tar.gz
tar -zxvf openfst-1.6.7.tar.gz
cd openfst-1.6.7
./configure --prefix=/usr/local/kaldi/tools/openfst-1.6.7
make -j4
make install
ln -s /usr/local/kaldi/tools/openfst-1.6.7 /usr/local/kaldi/tools/openfst
7)安装cub
cd /usr/local/kaldi/tools
make cub
8)再次检测依赖程序是否安装
extras/check_dependencies.sh
当系统回显类似如下信息时,表示安装依赖完成。
extras/install_openblas.sh: all OK.
4、 编译和安装
1)进入src目录。
cd /usr/local/kaldi/src/
2)配置生成Makefile。
./configure --shared
3)编译Kaldi。
make -j clean depend
make -j4
kaldi需要安装哪一些依赖包,可以通过进入kaldi/tools目录,运行./extras/check_dependencies.sh进行查看。
5、 运行和验证
egs目录下存放的是Kaldi提供的一些例子,我们通过其中的yesno例子来验证kaldi。
1)进入yesno目录。
cd /usr/local/kaldi/egs/yesno/s5
2)运行yesrun例子
./run.sh
当系统回显类似如下信息时,表示安装kaldi成功。