Open tianpu opened 5 years ago
这个代码加到代码中的哪里 --disable-openssl
# check & install libevent
old_version=
echo -n "Checking libevent ... "
if test -f $prefix/include/event2/event-config.h ; then
old_version=`cat $prefix/include/event2/event-config.h | grep EVENT_VERSION | cut -d\" -f2`
echo $old_version
else
echo "no"
fi
do_install=$set_force
new_file=`ls ./packages/libevent-*`
new_version=`echo $new_file | sed 's#^.*libevent-\(.*\)\.tar\.bz2#\1#'`
if test -z "$old_version" ; then
if test -z "$new_version" ; then
echo "ERROR: Missing libevent package (缺少 libevent 安装包)"
exit 2
fi
echo "Installing libevent ($new_version) ... "
do_install=yes
elif ! test -z "$new_version" && test "$new_version" != "$old_version" ; then
echo "Upgrading libevent ($old_version -> $new_version)"
do_install=yes
fi
if test "$do_install" = "yes" ; then
echo "Extracting libevent package ..."
tar -xjf $new_file
cd libevent-$new_version
echo "Configuring libevent ..."
./configure --prefix=$prefix >> ../setup.log 2>&1
if test $? -ne 0 ; then
setup_abort "configure libevent"
fi
echo "Compiling & installing libevent ..."
make clean >> ../setup.log 2>&1
make $mk_add_option install >> ../setup.log 2>&1
if test $? -ne 0 ; then
setup_abort "compile libevent"
fi
cd ..
fi
兄台也遇到这个问题了啊。
L334
- ./configure --prefix=$prefix >> ../setup.log 2>&1
+ ./configure --prefix=$prefix --disable-openssl >> ../setup.log 2>&1
谢谢兄台的帮助 安装成功
libevent 感谢分享!
我试了下更换libevent版本,不可行。只有你这个办法可以。 openssl 1.1 对应需要 libevent 2.1.x以上,目前安装包自带的是 libevent 2.0.x。 将 packages 中的libevent 更换到 2.1以上不能成功,返回错误 error: libevent 2.0.0 or greater required!
这个方法可以
建议用docker
发自我的 iPhone6艹
在 2019年9月3日,15:26,David Wu notifications@github.com 写道:
这个方法可以
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread.
@hightman 用docker不太方便,比如说修改自定义词库,执行Indexer.php之类的
原因在于libevent 2.0.x需要openssl < 1.1.0
常用的几个Linux发行版已经把系统的openssl升级到了1.1.0+ 即对应需要libevent 2.1.x+ 而libevent 2.1.x改了头文件.. 如果不更换系统openssl版本. 那就可以去手动下载一个 libevent-2.1.11-stable.tar.gz 自己换成bz压缩格式(libevent-2.1.11-stable.tar.bz2) 放进 packages,记得删掉原来的libevent
然后修改 xunsearch-1.4.13/configure L5390
- #if _EVENT_NUMERIC_VERSION >= 0x02000000
+ #if EVENT__NUMERIC_VERSION >= 0x02000000
即可通过libevent的编译及xunsearch的configure
原因在于libevent 2.0.x需要openssl < 1.1.0
常用的几个Linux发行版已经把系统的openssl升级到了1.1.0+ 即对应需要libevent 2.1.x+ 而libevent 2.1.x改了头文件.. 如果不更换系统openssl版本. 那就可以去手动下载一个 libevent-2.1.11-stable.tar.gz 自己换成bz压缩格式(libevent-2.1.11-stable.tar.bz2) 放进 packages,记得删掉原来的libevent
然后修改 xunsearch-1.4.13/configure L5390
- #if _EVENT_NUMERIC_VERSION >= 0x02000000 + #if EVENT__NUMERIC_VERSION >= 0x02000000
即可通过libevent的编译及xunsearch的configure
感谢兄台。
freebsd升级到12.1后,默认openssl版本是1.1.1.d只有这个方法可行了。 强行安装上了,没看源码,希望没后遗症。
打包了个支持freebsd 12.1 + openssl 1.1.1d的,在https://github.com/tianpu/xunsearch
打包了个支持freebsd 12.1 + openssl 1.1.1d的,在https://github.com/tianpu/xunsearch
修改configure文件的L5390是为了正确的识别新版本的openssl并将openssl编译进去 你同时又使用了楼上的--disable-openssl选择不编译openssl
迷惑操作.jpg
打包了个支持freebsd 12.1 + openssl 1.1.1d的,在https://github.com/tianpu/xunsearch
修改configure文件的L5390是为了正确的识别新版本的openssl并将openssl编译进去 你同时又使用了楼上的--disable-openssl选择不编译openssl
迷惑操作.jpg
是这样子的,如果不修改L5390,压根不能安装。 而可以安装后,本地socket连接似乎没有必要openssl,总觉得依赖越少越安全。
centos和freebsd都遇到了这个问题,libevent编译不通过,可以通过在setup.sh给libevent安装增加--disable-openssl来解决