三、安装翻译模型训练工具Giza++,mkcls
1、 在mtworkdir目录下下载并解压Giza++:
cd /home/52nlp/mtworkdir
wget ~redpony/software/giza++.gcc41.tar.gz
tar -zxvf giza++.gcc41.tar.gz
解压后得到GIZA++-v2/目录
2、编译Giza++:
cd GIZA++v2
make
以前这一步都比较顺利,没想到这一次出了问题:编译过程中提示stream.h文件无法找到,开始以为自己的编译环境没有配置完全,但是检查了几项必要的都安装了。在Google上搜这个问题,国内好像还没有人遇到过,最终在Google code giza-pp的issue上找到了的答案(?id=7):
Cannot compile with gcc 4.3 or greater
Giza++不能被gcc,g++4.3或更高版本编译。这个问题也是最近被发现的,属于一个bug,而ubutu8.10默认安装的gcc,g++都是4.3版本,这个帖子里提出了几种解决方案,我用了最简单的一种:
安装g++-4.1: sudo apt-get install g++-4.1
修改GIZA++-v2里的Makefile:vi Makefile
将第5行CXX=g++
替换为:CXX=g++-4.1
OK, 可以重新make了:
make
make snt2cooc.out
一切顺利!
3、下载解压并编译mkcls:
cd ..(重新进入mtworkdir目录)
wget ~redpony/software/mkcls.gcc41.tar.gz
tar -zxvf mkcls.gcc41.tar.gz
cd mkcls-v2
make
这一步一般没啥问题。
4、建立bin目录,并将giza++,mkcls工具拷贝到bin目录下:
cd ..
mkdir -p bin
cp GIZA++-v2/GIZA++ bin/
cp GIZA++-v2/snt2cooc.out bin/
cp mkcls-v2/mkcls bin/