Moses在Ubuntu14.04平台的安装过程
平台环境:在windows 7中建立VMware虚拟机,操作系统为Ubuntu_14.04_amd_64
1.安装GIZA++
安装步骤如下:
wget http://giza-pp.googlecode.com/files/giza-pp-v1.0.2.tar.gz
tar -xzvf giza-pp-v1.0.2.tar.gz
cd giza-pp
make
cd ../
mkdir bin
cp giza-pp/GIZA++-v2/GIZA++ bin/
cp giza-pp/mkcls-v2/mkcls bin/
cp giza-pp/GIZA++-v2/snt2cooc.out bin/
2.安装SRILM
2.1安装SRILM依赖的包:
(1)C/C++ compiler:编译器gcc 3.4.3及以上版本,本机实验环境为gcc 4.5.22。
(2)GNU make:构建和管理工程的工具,解释Makefile里的指令,描述了整个工程所有文件的编译顺序和编译规则。这里是为了控制SRILM的编译和安装。
(3)GNU gawk:GNU所做的awk程序语言。对于文字资料的修改、对比、抽取等处理,使用c或passcal等不方便且费时,awk 能够以很短的程序完成。这里是处理SRILM里的一些脚本文件。
(4)GNU gzip:使用C语言编写的一种解压缩软件。这里是为了使 SRILM能够处理.Z和.GZ后缀的压缩文件。
(5)bzip2:数据压缩软件,压缩效率更高。这里是使SRILM能处理.bz2后缀的压缩文件。
(6)P7zip:数据压缩软件。这里是使SRILM能处理7-Zip的压缩文件。
(7)Tcl:可嵌入式脚本语言。用于脚本编程和测试。这里是为了SRILM的测试。最好安装tcl8.x和tcl8.x-dev。可以不安装。
(8)csh:Unix shell的一种(这个很重要,安装过程中有个问题困扰了很久,最后发现是csh没有安装的原因)
2.2下载SRILM安装包:
下载链接http://www.speech.sri.com/projects/srilm/download.html,
创建安装的目录,并把压缩包解压到该目录。
mkdir srilm
cd srilm
tar -xzvf srilm.tgz
chmod +w Makefile
2.3修改Makefile文件(在srilm目录下)
(1)找到此行:
# SRILM = /home/speech/stolcke/project/srilm/devel,
另起一行输入srilm的安装路径,
SRILM=/home/kkdown/work/mt/srilm
(2)找到此行:
MACHINE_TYPE := (shell (SRILM)/sbin/machine-type),
在其前加#注释掉,并另起一行输入:
MACHINE_TYPE := i686-m64。
此行告诉Makefile之后要看的设置在/home/user/srilm/common/Makefile.machine.i686-m64中。(此处也很重要,因为ubuntu9.0.4 64bit的系统,跟32bit系统的配置方法有所不同。)
(3)需要同时修改sbin/machine-type,将其中对应位置改为
set MACHINE_TYPE =i686-m64
2.4把Ubuntu 14.04系统的相关设定告诉Makefile
用编辑器修改/home/kkdown/work/mt/srilm/common目录下的文件:Makefile.machine.i686-m64
(1)找到:
GCC_FLAGS = -march=athlon64 -m64 -Wreturn-type -Wimplicit
CC = $(GCCPATH)gcc $(GCC_FLAGS) -Wimplicit-int
CXX = $(GCCPATH)g++ $(GCC_FLAGS) -DINSTANTIATE_TEMPLATES
这里是为了告诉SRILM系统使用的compiler(c和c++),符合安装情况,不需要修改。
(2)找到:
# Tcl support (standard in Linux)
TCL_INCLUDE =
TCL_LIBRARY =
NO_TCL = 1
这里是为了告诉SRILM函数库(TCL)在系统中的安装位置,符合安装情况,不需要修改。
(3)找到:GAWK = /usr/bin/awk
修改为:GAWK = /usr/bin/gawk
注:各系统中这些软件的安装情况可能不同,查找软件的安装位置,可使用命令:which is gcc或which is g++或which is gawk等。
2.5修改环境变量
有两种方法可以修改环境变量,任选一种即可。
(1)第一种方法:输入命令:sudo gedit /etc/profilecd ..
找到:
if [ “
PS1′′];thenif[“
BASH” ]; then
PS1=’\u@\h:\w$ ‘
if [ -f /etc/bash.bashrc ]; then
. /etc/bash.bashrc
fi
else
if [ “`id -u`” -eq 0 ]; then
PS1=’# ‘
else
PS1=’
‘fififi在其后另起一行输入:exportPATH=”
PATH:/home/user/srilm/bin/i686-m64:/home/user/srilm/bin”
(2)第二种方法:运行命令:
export PATH=/home/kkdown/work/mt/srilm/bin/i686-m64:/home/kkdown/work/mt/srilm/bin:$PATH
2.6编译SRILM
在srilm目录下面,执行以下命令:
make World
2.7测试是否安装成功
编译通过不等于编译成功,必须利用SRILM提供的测试模块进行测试。需要说明的是,SRILM 1.5.10之前的版本,test文件在主目录下,而从版本1.5.10开始,test文件已不在主目录下,而是分别位于:$SRILM/lm & flm & lattice下,因此他们的测试方法不太一样。
(1)旧版本,进入SRILM根目录,执行
cd test
make all
(2)新版本,进入SRILM根目录,执行
make test
(3)测试过程需要一段时间才能完成,期间会在终端显示一大堆东西,若绝大多数是IDENTICAL,少数是DIFFERS,则表明 SRILM 编译成功了!
3.安装Moses
3.1安装依赖包
(1)官方文档指出必须安装的:
安装命令:sudo apt-get install [package name]
安装以下组件:
g++
git
subversion
automake
libtool
zlib1g-dev
libboost-all-dev
libbz2-dev
liblzma-dev
python-dev
libgoogle-perftools-dev (for tcmalloc)
(2)其他攻略说明必须安装的:
安装命令:sudo apt-get install [package name]
安装组件:
autoconf
automake(重复)
texinfo
zlib1g
zlib1g-dev(重复)
zlib-bin
zlibc
libtool(重复)
libboost-all-dev(重复)
libxmlrpc-c3-dev(找不到,libxmlrpc-core-c3-dev代替)
build-essential
其他组件:
apt-get install mpi-default-dev #安装mpi库
apt-get install libicu-dev #支持正则表达式的UNICODE字符集
(3)在上一步中,libxmlrpc-c3-dev找不到。
如果安装下面的包, 随后安装Moses,安装失败。
libxmlrpc-core-c3
libxmlrpc-core-c3-dev
但是安装下面的包, 随后安装Moses,安装成功。
xmlrpc-api-utils
libxmlrpc-core-c3
libxmlrpc-core-c3-dev
libxmlrpc-core-c++8
libxmlrpc-core-c++8-dev
3.2编译Moses
(1)下载Moses安装包,执行以下命令:
mkdir moses
git clone git://github.com/moses-smt/mosesdecoder.git moses
(2)编译Moses
cd moses
./bjam -j4 --with-srilm=/home/kkdown/work/mt/srilm --with-giza=/home/kkdown/work/mt/tools >& log.m &
说明:./bjam -jx,其中x说明是几核处理器,可以加快处理速度,另外两个参数分别指定srilm和giza的安装位置。可以查看log日志文件看是否在编译过程中存在错误。
注意:Moses编译不成功往往都是由于依赖包没有安装完整,比如boost库没有装好。
Moses在Ubuntu14.04平台的安装过程的更多相关文章
- Ubuntu14.04下Ambari安装搭建部署大数据集群(图文分五大步详解)(博主强烈推荐)
不多说,直接上干货! 写在前面的话 (1) 最近一段时间,因担任我团队实验室的大数据环境集群真实物理机器工作,至此,本人秉持负责.认真和细心的态度,先分别在虚拟机上模拟搭建ambari(基于CentO ...
- Ubuntu14.04 Django Mysql安装部署全过程
Ubuntu14.04 Django Mysql安装部署全过程 一.简要步骤.(阿里云Ubuntu14.04) Python安装 Django Mysql的安装与配置 记录一下我的部署过程,也方便 ...
- ubuntu14.04下编译安装ambari-2.4.2.0
ubuntu14.04下编译安装ambari-2.4.2.0 编译前的准备工作 准备工作有: 系统参数 系统依赖(编译环境) 离线安装包 java环境 maven环境 Nodejs环境 git环境 a ...
- Ubuntu14.04(64位)安装ATI_Radeon_R7_M265显卡驱动
电脑型号:Dell inspiron 14-5447 笔记本 显卡配置:集成显卡Intel核心显卡,Cpu是i5-4210U;独立显卡ATI_Radeon_R7_M265 网上关于ATI/Intel双 ...
- eclipse在Ubuntu 13.04下的安装过程
eclipse在Ubuntu 13.04下的安装过程及问题小记 一.eclipse安装过程 首先确保在安装eclipse之前已经安装好Java虚拟机 1. eclipse官网下载压缩包 下载地址:ht ...
- ubuntu14.04下手动安装eclipse
ubuntu14.04下手动安装eclipse 第一步: 安装jdk 第二步: 下载eclipse,假设下载的文件文件名为eclipse.tar.gz 第三步: 解压 sudo -zxvf ./ecl ...
- ubuntu14.04 下手动安装java jdk
ubuntu14.04 下手动安装java jdk 第一步: 下载jdk.tar.gz (这里假设下载的文件名为jdk.tar.gz) 第二步: 解压 sudo tar -zxvf ./jdk.tar ...
- ubuntu14.04 64位 安装Tomcat
ubuntu14.04 64位 安装Tomcat 1 下载Tomcat 在htt://www.tomcat.apache.org官网上下载apache-tomcat-7.0.57.tar.gz 2 解 ...
- ubuntu14.04 64位 安装eclipse
ubuntu14.04 64位 安装eclipse 1 在官网上下载eclipse http://www.eclipse.org/downloads/下载eclipse-jee-luna-SR1-li ...
随机推荐
- css3浏览器前缀 -mos/-webkit/-o/-ms
1.css3浏览器前缀的意思 -moz为firefox的前缀: -webkit为safari和chrome的前缀: -o为opera浏览器的前缀: -ms为ie浏览器的前缀: 2.常见的需要使用浏览器 ...
- 【教程】手把手教你如何利用工具(IE9的F12)去分析模拟登陆网站(百度首页)的内部逻辑过程
[前提] 想要实现使用某种语言,比如Python,C#等,去实现模拟登陆网站的话,首先要做的事情就是使用某种工具,去分析本身使用浏览器去登陆网页的时候,其内部的执行过程,内部逻辑. 此登陆的逻辑过程, ...
- 2015/9/9 js继续学习
var book={ //对象是由花括号括起来的 topic:“JavaScript”://属性“topic”的值是“JavaScript” fat:true: ...
- XE3随笔3:访问
测试数据提前加入 Memo1 中: { "name": "张三", /* 注释 */ "age": 33, "sex": ...
- jquery实现tab页切换显示div
1.jQuery实现tab切换显示代码实现 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" &q ...
- PHP创建缩略图造成图片质量低下的完美解决方法
近期弄个论坛,在首页要有个排名,显示评论最多的前十位用户的列表,列表有个略图是用户最新上传的作品,如果使用原来的图,图片过大,首页加载过慢,因此要使用略图 以上来使用imagecopyresized这 ...
- 水果项目第1集-想法>需求->功能->数据库设计->类设计
懒,懒人,我是个懒人. 懒人想做点事,总是拖拖拉拉,迟迟没有开始. 很久很久以前,就想做属于自己的产品,但是至今还没有一个属于自己的产品. 两年前,终于想好,要做一个网上卖水果的系统,手机上点点,水果 ...
- archlinux 安装mysql-workbench
archlinux packages 官方沒有提供 mysql-workbench的直接安裝包 在aur裏面可以找到, 使用yaourt -S mysql-workbench 這裏有個依賴ctempl ...
- 最短路算法 (bellman-Ford算法)
贝尔曼-福特算法与迪科斯彻算法类似,都以松弛操作为基础,即估计的最短路径值渐渐地被更加准确的值替代,直至得到最优解.在两个算法中,计算时每个边之间的估计距离值都比真实值大,并且被新找到路径的最小长度替 ...
- 比较有价值的参考文档-----------------URL
http://www.wendangku.net/doc/f7b4349108a1284ac85043bf.html 曙光服务器的IPMI http://noob.blog.1 ...