It seems invoking im()
. after invoking ./bin/mongooseim debug
shell fails with message "call to i:im/0 in application debugger fails". However, when I do it typical Erlang shell, it opens up the window correctly. Any idea why ?
0
votes
just to add some more info, what "./bin/mongooseim debug" does is "erl -same debug-0-mongooseim@localhost -setcookie ejabberd -remsh mongooseim@localhost -hidden" and it enters into a remote shell and then I type im(). and it shows up above error. I'm using ubuntu 15.04 with erlang/OTP 17 [erts-6.4.1] installed directly from erlang website.
– Weide Zhang
possible duplicate of Call to i:im() in application debugger failed in ejabberd
– Mickaël Rémond
1 Answers
0
votes
There is several reasons starting debugger graphical interface could fails:
- you are debugging a remote server and the server cannot display its UI on your local computer through SSH.
- You are missing access to some Erlang components in the context of ejabberd.
As an example, I tried on my local computer and it worked fine:
$ ./ejabberdctl debug
...
Erlang/OTP 17 [erts-6.4] [source] [64-bit] [smp:4:4] [async-threads:10] [hipe] [kernel-poll:true]
Eshell V6.4 (abort with ^G)
(ejabberd@localhost)1> i:im().
<0.464.0>
It even worked with ejabberd binary installer after adding the debugger component for Erlang R17B-5 in INSTALLER_DIR/lib/
.
The component you need to add to binary installer to use the graphical debugger are: debugger
and wx
. Just copied those two dir and it worked.