初次接触sphinx遇到各种坑,特记录此安装过程,方便下次直接复制粘贴~

sphinx官方版是支持中文索引的,但不支持中文分词,所以,不需要中文分词的可以直接使用官方原版的。

关于"libiconv"错误,报错原因:g++没有添加 -libiconv选项,解决办法:首先编译安装"libiconv"

wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.15.tar.gz
tar -zxvf libiconv-1.15.tar.gz && cd libiconv-1.15
./configure
make && make install

其次,在编译安装sphinx的时候configure加参数

./configure LIBS=-liconv

或者,导入系统变量,执行命令

export LIBS="-liconv"

没有再次。

===老衲的编译脚本===

wget http://sphinxsearch.com/files/sphinx-2.2.11-release.tar.gz
tar -zxvf sphinx-2.2.11-release.tar.gz
cd sphinx-2.2.11-release
./configure --prefix=/usr/local/sphinx LIBS=-liconv
make & make install

那么,libiconv用来干什么呢,是在xmlunknowencode时才用到。大多数情况下我们都使用utf-8,几乎用不到这个功能的,所以可以不安装,configure参数如下

./configure -without-iconv
然后,make和make install就可以。不建议通过修改makefile来解决出错问题。