当前位置: 首页 > 工具软件 > PyXMPP > 使用案例 >

win32下编译pyxmpp

计弘
2023-12-01

    之前用python写jabber的客户端,连接openfire(openfire存在一个与协议不一致的地方,google之)。因为一些原因吧,开发是在win32环境下进行的,没有找到现成的exe,就要自己编译pyxmpp了,下面记录大致的编译过程,不使用MSVC,而是MinGW,并假设你已经掌握了win32的一些技巧。

 

一下灰色部分参考英文文档,表述不够准确的地方,请看原文档。

1. 安装MinGW gcc,参考http://mingw.org;


2. 创建libpython25.a;

不幸的是大部分的python发行版本提供的是由MSVC编译的libpython25.lib,而gcc需要的是libpython25.a。首相找到Python25.dll(通常在C:/WINDOWS/system32下),执行pexports python25.dll > python25.def,将python25.dl的符号表写入python25.def;然后执行dlltool --dllname python25.dll --def python25.def --output-lib libpython25.a;最后拷贝libpython25.a到{Python安装目录}/libs。


3. 下载libxml2及依赖库,并进行相应的处理;

从http://www.zlatkovic.com/libxml.en.html下载zlib、iconv、libxml2的win32二进制文件。libxml2提供由MSVC编译的.lib文件,通过reimp libxml2.lib得到MinGW所需的导入库libxml.a。注意在setup.py安装脚本中指定了目录d:/libs。


4. 编译、安装pyxmpp

编译:python setup.py build -cmingw32

安装:python setup.py install --skip-build

生成win32安装包:python setup.py build -cmingw32 bdist_wininst

 

至此,pyxmpp的编译到此就完成了。有需要win32安装包的朋友邮件/MSN联系。

与pyxmpp相似的python实现还有xmpppy,twisted的words。

 类似资料: