Maison  >  Article  >  développement back-end  >  php分享之trie_filter扩展模块安装

php分享之trie_filter扩展模块安装

WBOY
WBOYoriginal
2016-06-20 12:25:41968parcourir

一 安装libiconv,这个是libdatrie的依赖项

wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz

tar zxvf libiconv-1.14.tar.gz

cd libiconv-1.14

./configure

make

make install

二 安装:libdatrie (http://linux.thai.net/~thep/datrie/datrie.html#Download)

tar zxf libdatrie-0.2.4.tar.gz

cd libdatrie-0.2.4

./configure --prefix=/usr/local

make

make install

编辑过程中的问题汇总

1编译出现错误 trietool.c:125: undefined reference to `libiconv'

[sourcecode language="plain"]./configure LDFLAGS=-L/usr/local/lib LIBS=-libiconv 这个目前在虚拟机上不好用(真实服务器不存在)[/sourcecode]

2 configure: error: C compiler cannot create executable 这个错误一般没有安装gcc

yum install gcc gcc-c++

3 libiconv.so.2: cannot open shared object file 代表找不到libiconv.so.2 解决方案

在/etc/ld.so.conf中加一行/usr/local/lib,

然后运行/sbin/ldconfig,文件解决,没有报错了~~

到此位置trie_filter安装陈功

三 安装PHP扩展

tar xvf trie_filter-2011-03-21.tar

cd trie

/usr/local/php/bin/phpize

./configure --with-php-config=/usr/local/php/bin/php-config

make

make install

四 生成敏感词词典

首先你需要把需要检测的敏感词写入到一个文本文件中(如:minganci.txt),每行一个敏感词,然后使用上一步生成的 dpp 程序处理这个文本文件来生成词典

./dpp txt_file_path dict_file_path

(例:./dpp /home/like/software/minganci.txt minganci.dic)

生成过程中出现的问题

1./dpp: error while loading shared libraries: libdatrie.so.1: cannot open shared object file: No such file or directory

#vi /etc/ld.so.conf 在里面加入:/usr/local/lib

然后运行:#/sbin/ldconfig,即解决

最后再:./dpp /home/like/software/minganci.txt minganci )

备注:如果需要支持中文的话 则替换扩展包的内容php-ext-trie-filter-maste_support_ch

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn