基本都是coreseek官网提供的命令安装,但是在freebsd上出现很多问题,都是查找解决的。

sh buildconf.sh最后没有生成configure脚本,且提示automake: warnings are treated as errors
在 csft-4.1/buildconf.sh 文件中,查找
&& aclocal \
后加上
&& automake --add-missing \

在 csft-4.1/configure.ac 文件中,查找:
AM_INIT_AUTOMAKE([-Wall -Werror foreign])
改为:
AM_INIT_AUTOMAKE([-Wall foreign])

这里支持pgsql接口
./configure --prefix=/usr/local/coreseek --without-unixodbc --with-mmseg --with-mmseg-includes=/usr/local/mmseg3/include/mmseg/ --with-mmseg-libs=/usr/local/mmseg3/lib/ --without-mysql --with-pgsql --enable-id64

编译的时候出错
sphinxexpr.cpp:1746:43: error: ‘ExprEval’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
可以直接修改src/sphinxexpr.cpp文件的1746, 1777和1823行,将三行中的ExprEval改为this->ExprEval

undefined reference to `libiconv'
这个直接采用官方的第三种方法了,为了方便。。

配置完建立索引的时候
source 'src1': unknown type 'pgsql'; skipping.

卧槽 4.1编译完以后一直内存段错误 ,找不到问题。换成稳定版本,libiconv采用第二种方法,成功。

/usr/local/coreseek/bin/searchd -c /usr/local/etc/sphinx.conf启动
加-h查看参数
/usr/local/coreseek/bin/search -c /usr/local/etc/sphinx.conf -a mp4 搜索

明天详细研究一下配置文件

###########
测试完真正安装的时候又报错了。
编译mmseg的时候报错ThesaurusDict.h:12:17: error: expected namespace name
编辑文件:ThesaurusDict.h

在头部找到:#include

再其下加入一行代码:#include

3.2修改src/sphinxexpr.cpp的1080,1013,1047行

上一篇:
下一篇:

相关文章:

Categories: 博客记录

0 Responses so far.

Leave a Reply