kaldi官网:http://www.kaldi-asr.org/doc/index.html

http://github.com/kaldi-asr/kaldi中直接下载kaldi的zip包,没有使用git方式,官网给出的git下载代码如下:

  git clone https://github.com/kaldi-asr/kaldi.git kaldi --origin upstream

如果系统未安装 git,那么要首先安装git

 sudo apt-get install git

图1 kaldi代码结构

kaldi中比较重要的文件夹是egs(示例)、src(源代码)、tools(工具)。

下载完kaldi包之后还需要在系统下安装一些软件工具,我使用的是虚拟机Ubuntu系统,自带了apt-get工具,用它来从认证软件源下载和安装软件包。

 sudo apt-get install subversion
sudo apt-get install automake
sudo apt-get install libtool
sudo apt-get install zlib1g
sudo apt-get install zlib1g-dev
sudo apt-get install ruby
sudo apt-get install libatlas-dev
sudo apt-get install libatlas-base-dev
sudo apt-get install wget
10 sudo apt-get install git

在安装以上软件包时,有时会安装额外的依赖包,自动安装即可。

kaldi编译:

1.  进入tools子目录,打开终端,运行make或make - j 4(多核并行加快速度)

编译时出现错误:internal compiler error: Killed (program cc1plus),原因是虚拟机Ubuntu系统没有交换分区,编译过程中内存耗尽,导致编译中断。

解决方式如下:

 sudo install -o root -g root -m  /dev/null /swapfile
sudo dd if=/dev/zero of=/swapfile bs=1k count=2048k #创建2G的分区文件
sudo mkswap /swapfile #生成swap文件系统
sudo swapon /swapfile #激活swap文件
echo "/swapfile swap swap auto 0 0" | sudo tee -a /etc/fstab #修改/etc/fstab文件内容,最后增加一行,系统重启时自动加载交换分区
cat /etc/fstab #查看文件

第10行cat语句 用于查看fstab文件,确认是否修改成功。

2.  进入src子目录,打开终端,运行./configure

3.  make depend,进行依赖库检查

4.  运行make或make - j 4(多核并行加快速度)

以上是CPU下的编译执行过程。本人电脑比较烂,自学tensorflow和kaldi等深度学习相关均是在CPU下试验,先深入理解工具使用和原理,日后工作中再搞GPU,跑速度。

虚拟机Ubuntu系统下kaldi安装与编译简介的更多相关文章

  1. Ubuntu系统下OpenDaylight源码编译安装

    操作系统:Linux x64 / Ubuntu 14.04 研究领域:软件定义网络SDN (Software-defined Networking) 开发组件:OpenDaylight 声明:转载请注 ...

  2. Ubuntu系统下环境安装遇到依赖冲突问题

    问题场景:在ubuntu系统下使用docker拉了一个python3.6的镜像,要在该容器中安装vim结果总是报已安装某些依赖的版本不满足要求 解决方法: 1.安装aptitude apt-get i ...

  3. Ubuntu 系统下如何安装pip3工具

    一.[导读]Ubuntu 系统内置了 Python2 和 Python3 两个版本的开发环境,却没有内置相应的 pip3 管理工具,本文将介绍如何在Ubuntu下如何快速安装 pip3 工具,并升级到 ...

  4. ElasticSearch5在Ubuntu系统下的安装和Java调用

    ElasticSearch是开源搜索平台的新成员,实时数据分析的神器.可以理解为作为搜索的数据库,可以提供搜索功能.对比关系型数据库,具有以下的相似关系: 关系型数据库 数据库 表 行 列 Elast ...

  5. ubuntu系统下手动安装autoconf安装包

    首先简单介绍一下autoconf.Autoconf是一个可以适应多种unix类系统的shell脚本的工具. 我在往虚拟机中安装应用时,需要用到该工具,于是想下载一个.但是由于系统内核版本低,已不能用a ...

  6. Ubuntu 系统下 mongodb 安装和配置

    安装 MongoDB sudo apt-get install mongodb sudo apt-get install mongodb 关闭/启动 sudo service mongodb stop ...

  7. ubuntu系统下怎么安装gcc编译器

    你安装一个名字叫做build-essential的软件包,就可以一次将编译器.make工具.所有的编程头文件.函数库等东东全部安装上,其中也包括gcc编译器,这是非常稳妥的安装方式,安装命令是用roo ...

  8. Ubuntu系统下,pip3安装python3的pymysql包 报错的问题

    sudo pip3 --version 查看pip3的版本 sudo pip3 install --upgrade pip 更新pip3 sudo pip3 list  查看安装的包列表 如上图, p ...

  9. Python 基础之在ubuntu系统下安装双版本python

    前言:随着python升级更新,新版本较于老版本功能点也有不同地方,作为一个初学者应该了解旧版本的规则,也要继续学习新版本的知识.为了能更好去学习python,我在ubuntu安装python2和py ...

随机推荐

  1. 解决:mysql5.7 timestamp默认值‘0000-00-00 00:00:00’报错

    mysql5.7 运行sql脚本时报错 - Invalid default value for 'UPDATE_TIME' [Err] CREATE TABLE `V_TBL_AMOUNT_REASO ...

  2. v-for设置键值 key

    总是用 key 配合 v-for.在组件上_总是_必须用 key 配合 v-for,以便维护内部组件及其子树的状态. <ul> <li v-for="todo in tod ...

  3. IBATIS+ORACLE(一)

      迁移时间:2017年6月1日15:55:17 Author:Marydon (四)IBATIS + ORACLE 第一部分:基础篇 1.4.1.1 分页SQL <!-- 开头 --> ...

  4. ip范围生成 C#

    #region ip /// <summary> /// ip rang ,ip /// </summary> /// <param name="str&quo ...

  5. Linux-HUP信号的干扰问题

    在向大家详细介绍Linux HUP信号之前,首先让大家了解下Linux HUP信号,然后全面介绍Linux服务器X,希望对大家有用.想让进程在断开连接后依然保持运行?如果该进程已经开始运行了该如何补救 ...

  6. C#调用Windows CMD命令并,返回输出结果或错误信息

    public static string InvokeExcute(string Command) { Command = Command.Trim().TrimEnd('&') + &quo ...

  7. 悟道—位IT高管20年的职场心经(读书笔记一)

    悟道--一位IT高管20年的职场心经 第一章  修炼! 修炼! 别跟我谈事业,先把工作做好. 别跟我说理想,先把饭碗端好: 志不可天天立.道必须日日修.没有实力,一切皆为妄谈. 修炼是硬道理. 1.1 ...

  8. 参数数组(params)的用法

    使用参数数组的注意事项: 1. 只能在一维数组上使用params关键字. 2. 不能重载一个只基于params关键字的方法.params关键字不构成方法的签名的一部分. 如: //编译时错误:重复访问 ...

  9. python字符串操作,以及对应的C#实现

    --IndexOf-- python: inx = str.find("aa") c#: var inx = str.IndexOf("aa"); --Last ...

  10. Atitit。Js调用后台语言 java c#  php swing android  swt的方法大总结

    Atitit.Js调用后台语言 java c#  php swing android  swt的方法大总结 1. Js调用后台语言有三种方法1 2. Swt  BrowserFunction 绑定方法 ...