据我所知,为了开发ejabberd模块,我必须能够从源代码编译它。
我有FreeBSD 11.0-RELEASE-p9,作为VirtualBox上的客户操作系统。所以以下是我的尝试。
使用git,我将源克隆到/ usr / local / ejabberd:
我运行以下命令:
git clone git://github.com/processone/ejabberd.git ejabberd cd ejabberd ./autogen.sh
./ configure --enable-user = ejabberd --enable-mysql
gmake install
但我有以下错误:
编译/usr/local/ejabberd/deps/fast_yaml/c_src/fast_yaml.c /usr/local/ejabberd/deps/fast_yaml/c_src/fast_yaml.c:18:10:致命错误:' yaml.h'找不到文件
错误:处理/ usr / local / ejabberd / deps / fast_yaml /:rebar_abort
时编译失败Fyi,我已经使用ports安装了libyaml-0.1.7 - 我想是成功的吗?
任何提示/建议。
谢谢。
答案 0 :(得分:0)
您可以查看FreeBSD port does:运行-I/usr/local/include
时将CFLAGS
传递到make
。 ejabberd还有bunch of patches,在编译之前应用。
如果要从源代码编译开发版本,可以先尝试运行make -C /usr/ports/net-im/ejabberd extract
,然后将源代码从git放入/usr/ports/net-im/ejabberd/work
目录。然后运行make -C /usr/ports/net-im/ejabberd install
应安装开发包。