首先要把东西准备齐了,已经有人做出了vc的代码补丁,可以到这个地方去下http://pingu.ii.uj.edu.pl/~ono/jabber/(比如这个jabberd-2.0-CVS20050711-VC2003.zip),然后就是要JABBERD2的源代码jabberd-2.0s11.tar.gz,还有openSSL和mysql的库文件,编译的时候用的到(Win32OpenSSL-0_9_8d.exe,mysql-5.0.37-win-src.zip mysql的开发包,也就是源代码啦).
然后就是工具咯,.net2003 2005都可以~还有一个就是要个Patch工具(好象就是svc代码维护用的,linux下面的Patch命令,不过我不记得从哪儿弄的了)给代码打补丁.
就可以正式开始了,先解压jabberd-2.0s11.tar.gz.到目录jabberd,再将jabberd-2.0-CVS20050711-VC2003.zip也解压至jabberd目录,将patch.exe 拷贝至jabberd目录或将patch.exe所在目录加入系统Path变量.
命令行下进入jabberd输入:
Jabberd> patch -p0 < jabberd-2.0-VERSION-win32.patch
Jabberd> patch -p0 < jabberd-2.0-VERSION-ntlogon+sspi.patch
为代码打补丁
进入目录jabberd/vcbuild/打开工程文件就可以了,不过编译之前还有些工作要做.先编译mysql中工程libmysql,生成libmysql.lib与libmysql.dll,拷贝至工程lib目录.添加mysql/include目录到编译器。然后安装OpenSSL,添加include lib/vc目录到编译器,拷贝libeay32MT.lib ssleay32MT.lib 到工程lib目录,改名为libeay32.lib ssleay32.lib.
最后启动编译,等待完成。
最后就是些杂七杂八的东西鸟~
重命名etc目录下配置文件,去掉.dist
拷贝相关文件到相同目录
文件列表:
sm.exe c2s.exe resolver.exe router.exe s2s.exe
sm.xml c2s.xml resolver.xml router.xml router-users.xml s2s.xml
ssleay32.dll 在openssl目录
libeay32.dll 在openSSL目录
libmysql.dll 编译mysql时获得
server.pem 可由openSSL生成
好了~生成完成,下一步就是配置了,跟之前版本差不多了
先安装mysql.
1. 默认路径安装mysql, 安装GUI tools,(我安装到d盘的时候竟然总是不能启动服务,不知道怎么搞的)
2. 使用查询分析器打开数据库脚本db-setup.mysql
3. 运行创建数据库jabberd2.
4. 添加jabberd2数据库管理员账户jabberd2Admin,密码:123设置其对数据库jabberd2的访问权限为selecet,update,insert,delete;(帐号密码就自己定吧)
修改.xml文件(有些不是很必要,看着改吧,数字是行号)
c2s.xml:
9: <pidfile>pid/c2s.pid</pidfile> 修改进程ID文件存放路径
25: <pemfile>server.pem</pemfile> 修改SSL证书路径
56: <file>log/c2s.log</file> 修改log文件存放路径
73: <id>pi-9</id> 修改为本地主机名,填错就连不上咯
86: <pemfile>server.pem</pemfile>
91: <cachain>server.pem</cachain>,去注释
207: <module>mysql</module> 使用mysql认证
215: 去掉注释; 允许注册
271: <user>jabberd2Admin</user> 修改数据库帐号密码
272: <pass>123</pass>
292: <path>db</path>
router.xml:
9: <pidfile>pid/router.pid</pidfile>
21: <file>log/router.log</file>
35: <users>router-users.xml</users>
47: <pemfile>server.pem</pemfile>,去注释 修改SSL证书路径,启用模块间ssl连接
resolver.xml:
9: <pidfile>pid/resolver.pid</pidfile>
26: <pemfile>server.pem</pemfile>,去注释
59: <file>log/resolver.log</file>,去注释
s2s.xml:
9: <pidfile>pid/s2s.pid</pidfile>
36: <pemfile>server.pem</pemfile>,去注释
68: <file>log/s2s.log</file>
96: <pemfile>server.pem</pemfile>
sm.xml:
7: <id>pi-9</id> 修改本地主机名
12: <pidfile>pid/sm.pid</pidfile>
29: <pemfile>server.pem</pemfile>,去注释
61: <file>log/sm.log</file>
86: <user>jabberd2Admin</user> 修改数据库帐号密码
87: <pass>123</pass>
121: <path>db</path>
然后就差不多可以工作鸟,剩下的就是证书那块不知道怎么弄,只有个自认证证书.