虚拟机Ubuntu系统下kaldi安装与编译简介
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安装与编译简介的更多相关文章
- Ubuntu系统下OpenDaylight源码编译安装
操作系统:Linux x64 / Ubuntu 14.04 研究领域:软件定义网络SDN (Software-defined Networking) 开发组件:OpenDaylight 声明:转载请注 ...
- Ubuntu系统下环境安装遇到依赖冲突问题
问题场景:在ubuntu系统下使用docker拉了一个python3.6的镜像,要在该容器中安装vim结果总是报已安装某些依赖的版本不满足要求 解决方法: 1.安装aptitude apt-get i ...
- Ubuntu 系统下如何安装pip3工具
一.[导读]Ubuntu 系统内置了 Python2 和 Python3 两个版本的开发环境,却没有内置相应的 pip3 管理工具,本文将介绍如何在Ubuntu下如何快速安装 pip3 工具,并升级到 ...
- ElasticSearch5在Ubuntu系统下的安装和Java调用
ElasticSearch是开源搜索平台的新成员,实时数据分析的神器.可以理解为作为搜索的数据库,可以提供搜索功能.对比关系型数据库,具有以下的相似关系: 关系型数据库 数据库 表 行 列 Elast ...
- ubuntu系统下手动安装autoconf安装包
首先简单介绍一下autoconf.Autoconf是一个可以适应多种unix类系统的shell脚本的工具. 我在往虚拟机中安装应用时,需要用到该工具,于是想下载一个.但是由于系统内核版本低,已不能用a ...
- Ubuntu 系统下 mongodb 安装和配置
安装 MongoDB sudo apt-get install mongodb sudo apt-get install mongodb 关闭/启动 sudo service mongodb stop ...
- ubuntu系统下怎么安装gcc编译器
你安装一个名字叫做build-essential的软件包,就可以一次将编译器.make工具.所有的编程头文件.函数库等东东全部安装上,其中也包括gcc编译器,这是非常稳妥的安装方式,安装命令是用roo ...
- Ubuntu系统下,pip3安装python3的pymysql包 报错的问题
sudo pip3 --version 查看pip3的版本 sudo pip3 install --upgrade pip 更新pip3 sudo pip3 list 查看安装的包列表 如上图, p ...
- Python 基础之在ubuntu系统下安装双版本python
前言:随着python升级更新,新版本较于老版本功能点也有不同地方,作为一个初学者应该了解旧版本的规则,也要继续学习新版本的知识.为了能更好去学习python,我在ubuntu安装python2和py ...
随机推荐
- electron的安装
1.安装 node.js https://nodejs.org/en/ 2.安装asar npm install -g asar 3.安装atom https://atom.io/ 4.安装elect ...
- liunx系统安装jdk的方法
1.下载jdk 下载地址: http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads ...
- Android BaseAdapter和ViewHolder 优化 解决ListView的item抢焦点问题和item错乱问题
首先赞下hyman大神 曾经仅仅是简单的重写个BaseAdapter,将getView方法保持抽象.而ViewHolder没有抽象过. .. ViewHolder (用了一个集合+泛型管理存取view ...
- taro 请求函数封装
1.项目目录 2.代码 app/src/service/api.js import Taro from '@tarojs/taro' import { HTTP_STATUS } from '../c ...
- ES6 let用法
1.实现块作用域 2.不存在变量提升. ES6 明确规定,如果区块中存在let和const命令,这个区块对这些命令声明的变量,从一开始就形成了封闭作用域.凡是在声明之前就使用这些变量,就会报错.
- Hadoop-2.4.1学习之怎样确定Mapper数量
MapReduce框架的优势是能够在集群中并行运行mapper和reducer任务,那怎样确定mapper和reducer的数量呢,或者说怎样以编程的方式控制作业启动的mapper和reducer数量 ...
- struts 简单前台用户名校验
一个jsp <?xml version="1.0" encoding="GB18030" ?> <%@ page language=" ...
- NET框架 Castle
Castle是针对.NET平台下的一个非常优秀的开源项目,从数据访问框架 ORM到依赖注入容器,再到WEB层的MVC框架.AOP,基本包括了整个开发过程中的所有东西,为我们快速的构建企业级的应用程序提 ...
- easyui tree自定义属性用法
easyui为树显示提供了以下属性, id:节点id,这个很重要到加载远程服务器数据 which is important to load remote data text: 显示的节点文本 stat ...
- ios 微信开发
首先依照对应的文档获得对应的key - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NS ...