先去官方网站下载最新的2个包,我下的是3.0 beta4,得到以下两个包
csft3_0b4.tar.gz
mmseg3_0b3.tar.gz
我将其放在/home/anerg/software了
解压
编译mmseg
很不幸,这里我出错了,错误提示为:css/UnigramCorpusReader.cpp:89: error: 'strncmp' was not declared in this scope
手动修改了src/css/UnigramCorpusReader.cpp
在上面添加了一句
从新,编译,安装
ok安装完毕了。
编译coreseek
又有问题了,没找到mysql
原来是没装mysql dev
再次编译
好了,没问题了,make试试
残念。。又出错了
仔细看了看,修改/usr/local/mmseg/include/mmseg/freelist.h这个文件,在上面添加
终于。。。我安装好了。。真不容易。。。
从新编译,安装,ok了
好了,稍微体验一下吧
更改里面mysql的参数为你的。去掉sql_query_pre = SET NAMES utf8前面的#
如果出错,看看你是不是有test这个数据库。
现在创建索引
好了,测试一下吧
ok,你会看到有结果了。
后记:说实话,coreseek的文档太不规范也不全了。不管怎么样,打算用就慢慢自己尝试吧。
csft3_0b4.tar.gz
mmseg3_0b3.tar.gz
我将其放在/home/anerg/software了
解压
tar -xzvf mmseg3_0b3.tar.gz
tar -xzvf csft3_0b4.tar.gz
tar -xzvf csft3_0b4.tar.gz
编译mmseg
cd mmseg*
sudo ./configure --prefix=/usr/local/mmseg
sudo make
sudo ./configure --prefix=/usr/local/mmseg
sudo make
很不幸,这里我出错了,错误提示为:css/UnigramCorpusReader.cpp:89: error: 'strncmp' was not declared in this scope
手动修改了src/css/UnigramCorpusReader.cpp
在上面添加了一句
#include <string.h>
从新,编译,安装
sudo ./configure --prefix=/usr/local/mmseg
sudo make
sudo make install
sudo make
sudo make install
ok安装完毕了。
编译coreseek
cd csf*
sudo ./configure --prefix=/usr/local/coreseek --with-python --with-mysql --with-mmseg-includes=/usr/local/mmseg/include/mmseg --with-mmseg-libs=/usr/local/mmseg/lib/
sudo ./configure --prefix=/usr/local/coreseek --with-python --with-mysql --with-mmseg-includes=/usr/local/mmseg/include/mmseg --with-mmseg-libs=/usr/local/mmseg/lib/
又有问题了,没找到mysql
原来是没装mysql dev
sudo apt-get install libmysqlclient15-dev
再次编译
sudo ./configure --prefix=/usr/local/coreseek --with-python --with-mysql --with-mmseg-includes=/usr/local/mmseg/include/mmseg --with-mmseg-libs=/usr/local/mmseg/lib/
好了,没问题了,make试试
残念。。又出错了
make[2]: *** [tokenizer_zhcn.o] 错误 1
make[2]:正在离开目录 `/home/anerg/software/csft3_0b4/src'
make[1]: *** [all] 错误 2
make[1]:正在离开目录 `/home/anerg/software/csft3_0b4/src'
make: *** [all-recursive] 错误 1
make[2]:正在离开目录 `/home/anerg/software/csft3_0b4/src'
make[1]: *** [all] 错误 2
make[1]:正在离开目录 `/home/anerg/software/csft3_0b4/src'
make: *** [all-recursive] 错误 1
仔细看了看,修改/usr/local/mmseg/include/mmseg/freelist.h这个文件,在上面添加
#include <string.h>
终于。。。我安装好了。。真不容易。。。
从新编译,安装,ok了
好了,稍微体验一下吧
cd /usr/local/coreseek/etc
sudo cp sphinx.conf.dist csft.conf
sudo gedit csft.conf
sudo cp sphinx.conf.dist csft.conf
sudo gedit csft.conf
更改里面mysql的参数为你的。去掉sql_query_pre = SET NAMES utf8前面的#
mysql -u test < /usr/local/coreseek/etc/example.sql
如果出错,看看你是不是有test这个数据库。
现在创建索引
sudo /usr/local/coreseek/bin/indexer --all
好了,测试一下吧
sudo /usr/local/coreseek/bin/search test
ok,你会看到有结果了。
后记:说实话,coreseek的文档太不规范也不全了。不管怎么样,打算用就慢慢自己尝试吧。







http://code.google.com/p/sphinx-for-chinese