我已经下载了ejabberd甚至完成了:
sudo port install ejabberd
在此之后,我试图从这里安装ejabberd-websocket模块:https://github.com/superfeedr/ejabberd-websockets
但是,请尝试我可能无法通过发出以下命令安装它:
./ build.sh
这是我得到的错误:
Recompile: src/mod_websocket
src/mod_websocket.erl:22: can't find include file "ejabberd.hrl"
src/mod_websocket.erl:23: can't find include file "jlib.hrl"
src/mod_websocket.erl:36: undefined macro 'DEBUG/2'
src/mod_websocket.erl:16: function process/2 undefined
src/mod_websocket.erl:14: Warning: behaviour gen_mod undefined
src/mod_websocket.erl:95: Warning: function validate_origin/1 is unused
src/mod_websocket.erl:171: Warning: function build_stream_end/0 is unused
我甚至通过macports安装了erlang。但是,我无法安装该模块。 我正在使用Mac OSX Mountain Lion。
任何帮助都会很棒。
答案 0 :(得分:1)
我可以帮助您解决一些问题。至少就我而言,ejabber安装在与该项目预期不同的位置。如果你打开Emakefile
,你会看到它试图包含/ usr / lib / ejabber / include,但在我的情况下我必须删除/ usr部分,所以它只是/ lib / ejabberd / include。在您的情况下可能不完全相同,但您只需找到您的ejabber安装并确保这些目录路径匹配。
我的Emakefile供参考
{'src/mod_websocket', [{outdir, "ebin"},{i,"/lib/ejabberd/include"},{i,"/lib/ejabberd/include/web","src"}]}.
{'src/ejabberd_xmpp_websocket', [{outdir, "ebin"},{i,"/lib/ejabberd/include"},{i,"/lib/ejabberd/include/web","src"}]}.
{'src/ejabberd_websocket', [{outdir, "ebin"},{i,"/lib/ejabberd/include"},{i,"/lib/ejabberd/include/web","src"}]}.
我还必须修改build.sh脚本,但我不认为它解决了我的任何问题
#!/bin/sh
erl -pa /lib/ejabberd /lib/ejabberd/include /lib/ejabberd/ebin -pz ebin -make