ejabberd unable to load driver '/lib/ejabberd/priv/lib/sha_drv.so'

来源:互联网 发布:西门子博途软件 编辑:程序博客网 时间:2024/05/22 15:08
今天我本本升级ubuntu 到11.10后,发现之前安装的ejabberd启动出现这个错误:
=ERROR REPORT==== 18-Aug-2011::20:01:01 ===
C(<0.39.0>:sha:53) : unable to load driver '/lib/ejabberd/priv/lib/sha_drv.so': wrong ELF class: ELFCLASS32


大概知道编译出了问题,google了一翻,原来是openssl libary 的路径可能改变了,查看一下安装在哪了:
>ldconfig -p | grep ssl
libssl3.so (libc6) => /usr/lib/i386-linux-gnu/libssl3.so
libssl.so.1.0.0 (libc6) => /lib/i386-linux-gnu/libssl.so.1.0.0
libssl.so.1.0.0 (libc6) => /usr/lib/i386-linux-gnu/libssl.so.1.0.0
libssl.so.0.9.8 (libc6) => /lib/libssl.so.0.9.8
libssl.so.0.9.8 (libc6) => /usr/lib/libssl.so.0.9.8
libssl.so (libc6) => /usr/lib/i386-linux-gnu/libssl.so
libgnutls-openssl.so.26 (libc6) => /usr/lib/i386-linux-gnu/libgnutls-openssl.so.26


重新编译ejabberd
./make clean
./configure --with-openssl=/usr/lib/i386-linux-gnu/
make
make install
搞掂