论坛首页 综合技术论坛

ejabberd Win32下编译注意事项.

浏览 3582 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-01-14   最后修改:2009-01-14
这两天项目里要用Xmpp.于是找来Ejabberd.
页面上有windows installer,很好很强大....,下载在XP上安装,最后install script出错 XD.
开干净的XP虚拟机,安装,继续出错,XD
装CentOS,下载bin,安装,成功.Exudos链接成功
准备用,jabberlang,写一个测试程序,运行发现居然需要ejabberd的module.XD
下源代码tar包,按照http://www.process-one.net/en/ejabberd/guide_en 的2.4.7下库,编译.环境XP,VC6,OTPR12.

先执行vsvars32.bat,configure.bat编译.

编译到OPENSSL报错,vc 不支持 long long,放狗没有结果Cao.
倒腾了半天,发现openssl0.9.8j是vc08编译的,于是运行2008的vsvars32.bat,过继续编译

nmake再报错,
Makefile.win32(7) : fatal error U1001: syntax error : illegal character '.' in macro
Stop.
放狗N次.发现这个
https://support.process-one.net/browse/EJAB-543
这帮鸟人,web download的tar包的makefile都是错的 MD
鉴于已经Fix了,svn checkout最新的代码.继续编译
发现了这个问题
https://support.process-one.net/browse/EJAB-791
CentOS的linux binary包里有相关的Beam文件,Makefile中也有对应的编译命令,但是src里就没有这个文件,check svn log无果XD.也搞不清楚是这些文件作废了还是没有从新check进去. F*ck
删掉svn的代码,继续用tar包代码,打Makfile补丁。顺利编译完毕.
命令行启动ejabberd,出错报告没有ram_file_io_server moulde.
查看源代码,有这个erl,但是没有beam.编译过程有问题。
查看编译log,发现有两个文件因为OTP的ssl库里 缺少三个PKIX***.erl的include文件没有编译通过.不知道是因为废弃了还是什么原因,幸好机器上装了10-12的各种版本一个个check,发现OTP11的文件最全,otp12居然连include和pkix都没有,otp12-5有include和pkix,但是include文件只有两个缺少pkix开头的那三个。估计又是安装包打包出的问题。Holy S*hit.
反正是hrl,直接copy过来,继续编译.
完成,运行,成功启动.

严重鄙视,这帮鸟人.


   发表时间:2009-04-30  
是很搞 ,ubuntu下载编译成功,设置mysql不行,还会继续使用执行mssql的SQL
win下我是win2003 server,vc++ 2008,编译成功,但是运行错误
0 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics