安装之前,先把这些工具包装好

yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel 

安装Sphinx

1. 将你下载的tar包解压,并进入sphinx 子目录:

$ tar xzvf sphinx-0.9.7.tar.gz

$ cd sphinx

2. 运行configuration 程序:

$ ./configure

configure程序有很多运行选项。完整的列表可以通过使用 --help 开关得到。最重

要的如下:

? --prefix, 定义将Sphinx安装到何处;

? --with-mysql, 当自动检测失败时,指出在那里能找到MySQL 头文件和库

文件;

? --with-pgsql, 指出在那里能找到PostgreSQL头文件和库文件。

3. 制作二进制程序:

$ make

4. 按照二进制程序到你选好的目录下:

$ make install

备注: 已知的问题和解决方法

如果configure 程序没有找到MySQL 的头文件和库文件,请试图检查 mysql-devel 这

个包是否安装了。在有些系统上,默认安装包括这个包。

如果make程序给出如下错误提示,

/bin/sh: g++: command not found

make[1]: *** [libsphinx_a-sphinx.o] Error 127

请检查gcc-c++ 这个包是否安装了。

如果你在编译时得到如下错误

sphinx.cpp:67: error: invalid application of `sizeof' to

incomplete type `Private::SizeError<false>'

这意味着某些编译时的类型检查失败了,一个最有可能的原因是在你的系统上类型off_t的

长度小于64bit。一个快速的修复手段是,你可以修改sphinx.h ,将在定义类型SphOffset_t

处,将off_t 替换成DWORD,需要注意,这种改动将使你的全文索引文件不能超过2GB