ubuntu下安装sphinx

时间:2024-04-01 07:31:31

准备源码包:sphinx-2.1.1;Sphinx的PHP模块:sphinx-1.1.0;结合中文分词的sphinx:coreseek-3.2.14

安装sphinx

    上传sphinx源码包到服务器,解压并安装:tar -zxvf sphinx-2.1.1    cd sphinx-2.1.1    ./configure --prefix=/usr/local/sphinx --with-mysql=/usr     make && make install;

    这里配置./configure的时候遇到问题:configure:error:invalid MySQL root directore 'usr/bin';neither bin/mysql_config,nor include/ and lib/ were found where。

        因为之前mysql是一键安装的,所以安装目录分散在多个地方,不知道--with应该写哪一个目录。试了所以目录都没有作用,百度查找答案发现是少了libmysqlclient-dev,

        于是安装libmysqlclient-dev;此时又有报错:提示没有源,运行命令更新源:apt-get update;然后继续执行:apt-get install libmysqlclient-dev 

        继续执行./configure成功然后make && make install

将sphinx安装为PHP模块

安装为模块之前先得安装libsphinxclient。将coreseek-3.2.14源码包上传到服务器解压tar-zxvf coreseek-3.2.14

然后进入coreseek-3.2.14/csft-3.2.14/api目录

ubuntu下安装sphinx

看到有一个libsphinxclient的目录,进入该目录cd libsphinxclient

ubuntu下安装sphinx

执行命令:./configure

ubuntu下安装sphinx

然后编译并安装:make && make install

这时可以去安装PHP sphinx模块:

上传sphinx-1.1.0.tgz然后解压进入;接着运送phpize指令;会出现configure指令

ubuntu下安装sphinx

配置:./configure --with-php-config=/usr/bin/php-config(路径根据自己的实际路径写)

ubuntu下安装sphinx

然后编译:make

这里会有个报错:make: *** [sphinx.lo] Error 1

ubuntu下安装sphinx

将sphinx.c的105行修改为如下:

retval = std_hnd->read_property(object, member, type TSRMLS_CC, NULL);

ubuntu下安装sphinx

然后:make && make install

安装成功:

ubuntu下安装sphinx

最后在php.ini文件中加上:

extension=sphinx.so

然后重启服务器:查看phpinfo

ubuntu下安装sphinx

完成!

软件下载百度云连接: https://pan.baidu.com/s/1RrGlG6ZmSDVOJ6K-VgHXEg 密码: yaan