Ubuntu 10.10 SRILM完全配置手册

因为Ubuntu10.10比较新,根据前人的博客,我自己实验了很久,始终是出现了这样和那样的错误,功夫不负有心人,终于解决了!

这里把步骤书写下来,希望看到此帖的人不用再走弯路.

在安装之前,可以配置一下Ubuntu的源,这样的速度会快一些!

(1)因为Ubuntu10.10的gcc的版本较高,所以需要下载一个较低的版本,并将其设为默认版本。

sudo apt-get install gcc-4.1

接下来,将gcc-4.1设置为默认的gcc编译器

sudo mv /usr/bin/gcc /usr/bin/gcc.bak

sudo ln -s /usr/bin/gcc-4.1 /usr/bin/gcc

 此时可以通过查看 gcc--version 查看当前的默认gcc版本号,这个是我的结果:

gcc(GCC) 4.1.3 20080704 (prerelease) (Ubuntu 4.1.2-29ubuntu1)

Copyright(C) 2006 Free Software Foundation, Inc.

This isfree software; see the source for copying conditions. There is NO

warranty;not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

(2)下载相关的软件:g++,make,gawk,gzip,bzip2,p7zip,tcl8.5,csh

可以通过which* 来查看安装的路径,如:which make

如果没有安装的话,可以使用:sudo apt-get install * 来安装,如: sudo apt-get install tcl8.5

(3)一切条件准备就绪,接下来开始正式下载和安装SRILM

我下载的版本是1.5.12,下载地址是:

http://www-speech.sri.com/projects/srilm/download.html

我下载到的目录是: /home/administrator/srilm/srilm.tgz

cd /home/administrator/srilm/

sudo tar -zxvf srilm.tgz

sudo gedit Makefile

在#SRILM = /home/speech/stolcke/project/srilm/devel后面添加一行,内容为:

SRILM= /home/administrator/srilm/

在MACHINE_TYPE:= $(shell $(SRILM)/sbin/machine-type)前面添加#,并另起一行输入:

MACHINE_TYPE:= i686

保存关闭。

cd common/

sudo gedit Makefile.machine.i686

将 #Use the GNU C compiler.下面的三行改成:

GCC_FLAGS= -mtune=pentium3 -Wreturn-type -Wimplicit

CC= gcc $(GCC_FLAGS)

CXX= g++ $(GCC_FLAGS) -DINSTANTIATE_TEMPLATES

将#Tcl support (standard in Linux)下面的两行改成:

TCL_INCLUDE= -I /usr/include/tcl8.5

TCL_LIBRARY= -L /usr/lib/tcl8.5

将 # Location of gawk binary 下面的一行改为

GAWK = /usr/bin/gawk

修改环境变量:

sudo gedit /etc/profile

在最后一行umask022

前面添加一行:

export PATH=$PATH:/home/administrator/srilm/bin/i686:/home/administrator/srilm/bin

接下来是执行编译步骤

cd ..

make World

执行完成之后,测试一下

make test

如果出现IDENTICAL,就说明成功了!

例如

***Running test multi-ngram ***

sh:cannot create output/multi-ngram.i686.stdout: Permission denied

Commandexited with non-zero status 2

0.00user0.00system 0:00.00elapsed ?%CPU (0avgtext+0avgdata 2112maxresident)k

0inputs+0outputs(0major+262minor)pagefaults 0swaps

/home/administrator/srilm//sbin/go.run-test:35: cannot create output/multi-ngram.i686.stderr.new: Permissiondenied

/home/administrator/srilm//sbin/go.run-test:35: cannot create output/multi-ngram.i686.stdout.new: Permissiondenied

multi-ngram:stdout output IDENTICAL.

multi-ngram:stderr output IDENTICAL.

好,就写到这里,大家有什么问题,可以给我留言!


这里注意一下,有的时候会发现在终端输入ngram,会出现下面结果:

ngram:找不到命令

这是路径配置的问题,在终端下输入

export PATH=$PATH:/home/administrator/srilm/bin/i686:/home/administrator/srilm/bin

就好了!





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值