安装之前,先把这些工具包装好
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