安装时配置时 ejabberd 显示错误

Posted

技术标签:

【中文标题】安装时配置时 ejabberd 显示错误【英文标题】:ejabberd show error while configure at time of installation 【发布时间】:2016-02-21 07:25:53 【问题描述】:

我正在尝试在我的服务器上配置 eJabberd

我已经安装了所有依赖项和其他需要的东西。 ERL 也通过 RPM 完全安装成功并带有运行结果

root@sXX-XX-XX-XX [~]# erl -smp disable
Erlang/OTP 18 [erts-7.1] [source-2882b0c] [64-bit] [async-threads:10] [hipe] [kernel-poll:false]

Eshell V7.1  (abort with ^G)
1> 

对于 eJabberd 的最终安装,我遵循以下链接:

http://docs.ejabberd.im/admin/guide/installation/

我也尝试过make clean,在尝试./configure --enable-mysql 之后,我也面临继续以下错误。

root@sXX-XX-XX-XX [/etc/ejabberd_downloads/ejabberd]# ./configure
checking whether make sets $(MAKE)... yes
checking for a BSD-compatible install... /usr/bin/install -c
checking for a sed that does not truncate output... /bin/sed
checking for erl... /usr/bin/erl
checking for erlc... /usr/bin/erlc
checking for erl... /usr/bin/erl
checking for erlc... /usr/bin/erlc
checking Erlang/OTP version... 
Crash dump is being written to: erl_crash.dump...
Failed to create aux thread
./configure: line 2523:  1636 Aborted                 $ERLC conftest.erl
configure: error: "Could not compile Erlang/OTP version check program using '/usr/bin/erlc'"

对于 erl_crash.dump 从顶部开始如下几行

=erl_crash_dump:0.3
Thu Nov 19 01:31:57 2015
Slogan: Failed to create aux thread
System version: Erlang/OTP 18 [erts-7.1] [source-2882b0c] [64-bit] [smp:64:24] [async-threads:0] [hipe] [kernel-poll:false]
Compiled: Wed Sep 23 15:34:00 2015
Taints:
Atoms: 2005
Calling Thread: beam.smp
=scheduler:1
Scheduler Sleep Info Flags: SLEEPING | TSE_SLEEPING
Scheduler Sleep Info Aux Work: SET_TMO
Current Port:
Run Queue Max Length: 0
Run Queue High Length: 0
Run Queue Normal Length: 1
Run Queue Low Length: 0
Run Queue Port Length: 0
Run Queue Flags: NONEMPTY_NORMAL | NONEMPTY
Current Process:
=scheduler:2

which erl 结果如下:

/usr/bin/erl

我无法追踪问题,任何参考都会非常有帮助。提前致谢。

【问题讨论】:

ulimit 命令告诉你什么?您允许的用户进程数量是否非常少? 也许您的服务器存在安全限制或正确的问题导致 Erlang 编译器无法正常工作。您应该尝试编译一个基本的 Erlang 模块,看看是否可行。 【参考方案1】:

您的 Erlang 版本似乎已损坏或旧,请重新安装并重试。对于 Ejabberd 16.x 版本 6.1 (Erlang/OTP 17.1) 是必需的。 您可以使用以下命令卸载 Erlang:

$ sudo apt-get purge erlang*

并从http://www.erlang.org/安装最新的Erlang

【讨论】:

以上是关于安装时配置时 ejabberd 显示错误的主要内容,如果未能解决你的问题,请参考以下文章

通过 Mule ESB CE 连接 Ejabbered

ejabberd MUC 未通知新消息

Ejabberd 配置:错误:找不到 libyaml 库

无法打开 ejabbered Web 仪表板 localhost:5280

ejabber 的 erl 文件在 mac os 10.7.5 上运行时给出错误“分段错误:11”

Python 和 EJABBERD/XMPP [关闭]