Ejabberd: Installation Error

Created on 28 Sep 2015  Â·  11Comments  Â·  Source: processone/ejabberd

i removed erlang 18 and installed 17.5 please find the below error , thank you

root@ubuntu:~/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/local/bin/erl
checking for erlc... /usr/local/bin/erlc
checking for erl... /usr/local/bin/erl
checking for erlc... /usr/local/bin/erlc
checking Erlang/OTP version... conftest.erl: internal error in expand_module;
crash reason: undef

in function erl_parse:new_anno/1
called as erl_parse:new_anno({function,0,module_info,0,
[{clause,0,[],[],
[{call,0,
{remote,0,{atom,0,erlang},{atom,0,get_module_info}},
[{atom,0,conftest}]}]}]})
in call from sys_pre_expand:'-module_predef_funcs/1-lc$^0/1-0-'/1 (sys_pre_expand.erl, line 119)
in call from sys_pre_expand:module_predef_funcs/1 (sys_pre_expand.erl, line 119)
in call from sys_pre_expand:module/2 (sys_pre_expand.erl, line 81)
in call from compile:expand_module/1 (compile.erl, line 1202)
in call from compile:'-internal_comp/4-anonymous-1-'/2 (compile.erl, line 295)
in call from compile:fold_comp/3 (compile.erl, line 321)
in call from compile:internal_comp/4 (compile.erl, line 305)
configure: error: "Could not compile Erlang/OTP version check program using '/usr/local/bin/erlc'"

Build

All 11 comments

i still have this error please help

root@ubuntu:~# cd ejabberd/
root@ubuntu:~/ejabberd# ./autogen.sh
root@ubuntu:~/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/local/bin/erl
checking for erlc... /usr/local/bin/erlc
checking for erl... /usr/local/bin/erl
checking for erlc... /usr/local/bin/erlc
checking Erlang/OTP version... ok
checking for Erlang/OTP root directory... /usr/local/lib/erlang
checking for escript... /usr/local/lib/erlang/bin/escript
checking for make... make
checking whether Erlang is using deprecated types... no
configure: creating ./config.status
config.status: creating Makefile
config.status: creating vars.config
config.status: creating src/ejabberd.app.src
root@ubuntu:~/ejabberd# make
/usr/local/lib/erlang/bin/escript rebar compile && :> deps/.built
==> goldrush (compile)
==> lager (compile)
==> p1_utils (compile)
==> p1_cache_tab (compile)
==> p1_tls (compile)
==> p1_stringprep (compile)
==> p1_xml (compile)
==> p1_stun (compile)
==> esip (compile)
==> p1_yaml (compile)
==> jiffy (compile)
==> oauth2 (compile)
/root/ejabberd/deps/oauth2/src/oauth2_response.erl:174: type map(_,_) undefined
ERROR: compile failed while processing /root/ejabberd/deps/oauth2: rebar_abort
make: *** [deps/.built] Error 1

if you can send me installation steps on ubuntu this will be more helpful... thank you

this error only appears when compiling with 18. using 17.5 works fine for me.

the first post i was using erlang 17.5 @cromain

i guess you did not called 'make distclean'

  • run make distclean, rm configure
  • install OTP 17.5
  • autogen.sh
  • configure && make

thank you @cromain for helping me
i run make distclean in ejabberd folder i got the bellow message

root@ubuntu:~/ejabberd# make distclean
rm -rf deps/.got
rm -rf deps/.built
rm -rf test/*.beam
/usr/local/lib/erlang/bin/escript rebar clean
Uncaught error in rebar_core: {'EXIT',
{undef,
[{crypto,start,[],[]},
{rebar,run_aux,2,
[{file,"src/rebar.erl"},{line,163}]},
{rebar,main,1,
[{file,"src/rebar.erl"},{line,58}]},
{escript,run,2,
[{file,"escript.erl"},{line,752}]},
{escript,start,1,
[{file,"escript.erl"},{line,276}]},
{init,start_it,1,[]},
{init,start_em,1,[]}]}}

=ERROR REPORT==== 28-Sep-2015::05:59:27 ===
Unable to load crypto library. Failed with error:
"bad_lib, Library version (2.8) not compatible (with 2.7)."
OpenSSL might not be installed on this system.
make: *** [clean] Error 1

this is because you configured ejabberd with 17, and run distclean with 18 or the reverse.
if you have 17.5 installed, just remove ejabberd sources and start from a clean build environement.

I have installed erlang 17.5, installing ejabbered, I am getting following error

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/local/bin/erl
checking for erlc... /usr/local/bin/erlc
checking for erl... /usr/local/bin/erl
checking for erlc... /usr/local/bin/erlc
checking Erlang/OTP version... conftest.erl: internal error in expand_module;
crash reason: undef

in function erl_parse:new_anno/1
called as erl_parse:new_anno({function,0,module_info,0,
[{clause,0,[],[],
[{call,0,
{remote,0,{atom,0,erlang},{atom,0,get_module_info}},
[{atom,0,conftest}]}]}]})
in call from sys_pre_expand:'-module_predef_funcs/1-lc$^0/1-0-'/1 (sys_pre_expand.erl, line 119)
in call from sys_pre_expand:module_predef_funcs/1 (sys_pre_expand.erl, line 119)
in call from sys_pre_expand:module/2 (sys_pre_expand.erl, line 81)
in call from compile:expand_module/1 (compile.erl, line 1202)
in call from compile:'-internal_comp/4-anonymous-1-'/2 (compile.erl, line 295)
in call from compile:fold_comp/3 (compile.erl, line 321)
in call from compile:internal_comp/4 (compile.erl, line 305)
configure: error: "Could not compile Erlang/OTP version check program using '/usr/local/bin/erlc'"

Any help would be appreciated.

This is happening every install erlang that I have tried, I have tried R15, OTP17.1, OTP17.5, 18.1, every erlang version is giving the same issue. Can anyone help here ?

Locate your erl bin directory, and create a symlink in /usr/local/bin

Won't solve anything, 18.0 worked after lots of hit and trail on Erlang
versions
On 9 Dec 2015 11:19 am, "sameer17cs" [email protected] wrote:

Locate your erl bin directory, and create a symlink in /usr/local/bin

—
Reply to this email directly or view it on GitHub
https://github.com/processone/ejabberd/issues/751#issuecomment-163117445
.

This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

Was this page helpful?
0 / 5 - 0 ratings