在应用程序调试器中调用 i:im() 在 mongooseim 中失败
Call to i:im() in application debugger failed in mongooseim
好像在调用im()
。在调用 ./bin/mongooseim debug
shell 后失败并显示消息 "call to i:im/0 in application debugger fails"。但是,当我执行典型的 Erlang shell 时,它会正确打开 window。知道为什么吗?
启动调试器图形界面失败的原因有多种:
- 您正在调试远程服务器,该服务器无法通过 SSH 在您的本地计算机上显示其 UI。
- 您无法访问 ejabberd 上下文中的某些 Erlang 组件。
举个例子,我在我的本地计算机上试过,它运行良好:
$ ./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>
在 INSTALLER_DIR/lib/
中添加了 Erlang R17B-5 的调试器组件后,它甚至可以与 ejabberd binary installer 一起工作。
您需要添加到二进制安装程序以使用图形调试器的组件是:debugger
和 wx
。刚刚复制了这两个目录,它起作用了。
好像在调用im()
。在调用 ./bin/mongooseim debug
shell 后失败并显示消息 "call to i:im/0 in application debugger fails"。但是,当我执行典型的 Erlang shell 时,它会正确打开 window。知道为什么吗?
启动调试器图形界面失败的原因有多种:
- 您正在调试远程服务器,该服务器无法通过 SSH 在您的本地计算机上显示其 UI。
- 您无法访问 ejabberd 上下文中的某些 Erlang 组件。
举个例子,我在我的本地计算机上试过,它运行良好:
$ ./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>
在 INSTALLER_DIR/lib/
中添加了 Erlang R17B-5 的调试器组件后,它甚至可以与 ejabberd binary installer 一起工作。
您需要添加到二进制安装程序以使用图形调试器的组件是:debugger
和 wx
。刚刚复制了这两个目录,它起作用了。