运维相关 · 2009年7月31日 0

CENTOS下aspell/pspell的安装使用

新换了测试机,拼写建议就出问题了,时好时坏,也不知道为什么。后来干脆就全给删了,手动编译安装。

首先去 http://aspell.net/ 下载最新的aspell并解压,然后编译并安装

wget ftp://ftp.gnu.org/gnu/aspell/aspell-0.60.6.tar.gz
tar -xf aspell-0.60.6.tar.gz
cd aspell-0.60.6
./configure --prefix=/usr
make && make install

这里我指定了安装的地址,是因为我的php编译的时候指定了pspell的路径,所以我也必须安装到相应的地方,默认编译的话安装路径是/usr/local。

顺便说下,如果想php使用pspell那么你在编译php的时候要加上参数–with-pspell=/usr,或者使用phpize在以后给加上。

这样aspell就装好了,但是现在还不能用,因为缺少语言字典。在这里可以下载你想要的字典ftp://ftp.gnu.org/gnu/aspell/dict/0index.html
我下的是英文的,解压,编译并安装。这里编译的时候会自动找到你的aspell的安装路径,所以很简单

wget ftp://ftp.gnu.org/gnu/aspell/dict/en/aspell6-en-6.0-0.tar.bz2
tar -xf aspell6-en-6.0-0.tar.bz2
cd aspell6-en-6.0-0
./configure
make && make install

好了,相关的字典文件就已经安装好了,重启你的php吧,我是用的nginx,所以稍微和一般的不同

/usr/local/php/sbin/php-fpm stop
/usr/local/php/sbin/php-fpm start

写个小程序测试下

<?php
    $word    = 'look at s';
    $pspell_link = pspell_new('en');
    $sug = pspell_suggest($pspell_link, $word);
     $suggestions = array_unique($sug);
     print_r($suggestions);
?>

join it!