ホームページ > バックエンド開発 > PHPチュートリアル > Linux に php sphinx モジュールをインストールする

Linux に php sphinx モジュールをインストールする

WBOY
リリース: 2016-06-23 13:13:24
オリジナル
1333 人が閲覧しました

環境:

Ubuntu 14.04 php5.59 mysql 5.5

1. sphinx 拡張機能をダウンロード http://pecl.php.net/package/sphinx 必要なバージョンを選択し、解凍して実行します

root@iZ282i5hw2tZ:~/sphinx-1.1.0# /usr/bin/phpizeConfiguring for:PHP Api Version:         20121113Zend Module Api No:      20121212Zend Extension Api No:   220121212root@iZ282i5hw2tZ:~/sphinx-1.1.0# 
ログイン後にコピー

2 libsphinxclient をインストールします

root@iZ282i5hw2tZ:~/coreseek-3.2.14/csft-3.2.14/api/libsphinxclient# ./configure<br />root@iZ282i5hw2tZ:~/coreseek-3.2.14/csft-3.2.14/api/libsphinxclient# make && make install
ログイン後にコピー

3. sphinx モジュールをインストールします

root@iZ282i5hw2tZ:~/sphinx-1.1.0# ./configure --with-php-config=/usr/bin/php-config --with-sphinx
ログイン後にコピー

root@iZ282i5hw2tZ:~/sphinx-1.1.0# make/bin/bash /root/sphinx-1.1.0/libtool --mode=compile cc  -I. -I/root/sphinx-1.1.0 -DPHP_ATOM_INC -I/root/sphinx-1.1.0/include -I/root/sphinx-1.1.0/main -I/root/sphinx-1.1.0 -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -I/usr/local/include  -DHAVE_CONFIG_H  -g -O2   -c /root/sphinx-1.1.0/sphinx.c -o sphinx.lo libtool: compile:  cc -I. -I/root/sphinx-1.1.0 -DPHP_ATOM_INC -I/root/sphinx-1.1.0/include -I/root/sphinx-1.1.0/main -I/root/sphinx-1.1.0 -I/usr/include/php5 -I/usr/include/php5/main -I/usr/include/php5/TSRM -I/usr/include/php5/Zend -I/usr/include/php5/ext -I/usr/include/php5/ext/date/lib -I/usr/local/include -DHAVE_CONFIG_H -g -O2 -c /root/sphinx-1.1.0/sphinx.c  -fPIC -DPIC -o .libs/sphinx.o/root/sphinx-1.1.0/sphinx.c: In function 'php_sphinx_client_read_property':/root/sphinx-1.1.0/sphinx.c:105:2: error: too few arguments to function 'std_hnd->read_property'  retval = std_hnd->read_property(object, member, type TSRMLS_CC);  ^/root/sphinx-1.1.0/sphinx.c: In function 'zim_SphinxClient_updateAttributes':/root/sphinx-1.1.0/sphinx.c:1040:6: warning: passing argument 2 of 'memset' makes integer from pointer without a cast [enabled by default]      memset(vals_mva, NULL, values_mva_size);      ^In file included from /usr/include/features.h:374:0,                 from /usr/include/stdlib.h:24,                 from /usr/include/php5/main/php_config.h:2418,                 from /usr/include/php5/main/php.h:33,                 from /root/sphinx-1.1.0/sphinx.c:26:/usr/include/x86_64-linux-gnu/bits/string3.h:76:1: note: expected 'int' but argument is of type 'void *' __NTH (memset (void *__dest, int __ch, size_t __len)) ^/root/sphinx-1.1.0/sphinx.c: In function 'zm_startup_sphinx':/root/sphinx-1.1.0/sphinx.c:1888:43: warning: assignment from incompatible pointer type [enabled by default]  php_sphinx_client_handlers.read_property = php_sphinx_client_read_property;                                           ^make: *** [sphinx.lo] Error 1
ログイン後にコピー

ここにエラーがあります。sphinx.c の 105 行目を変更します。

次にコンパイルして渡します

4 編集php.ini

rree

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート