IM OpenSource软件评测报告

来源:互联网 发布:网络4g十是什么意思 编辑:程序博客网 时间:2024/04/30 02:04
 概述

Jabber(XMPP- Extensible Messaging and Presence Protocol)协议,是一个开源的即时消息协议,建立在jabber协议上的IM客户端可以互连。关于XMPP的两个官方网http://www.xmpp.org/ http://www.jabber.org/

支持jabber协议的IM软件非常多 其中包括开源不开源的。参见:

http://www.jabber.org/clients(全部开源),主要以桌面客户端软件的形式运行,可以在一个界面上登陆msnjabbergtalk等。

http://www.laosafu.com/bbs/viewthread.php?action=printable&tid=202752(多数不开源)主要以web页面的方式提供msn,jabber,gtalk等登陆。

2       开源IM客户端比较

软件名

开源协议

开发语言及工具

运行平台

其他说明

源代码下载及说明

Pidgin

GPL

C/GTK

跨平台

在全球用得最广泛的一个开源IM软件

ttp://sourceforge.net下载排行第15位,下载量21,913,954

Miranda IM

GPL

C

WIN32

windowsSDK编程,内存占用小,速度快 支持插件扩展功能,

ttp://sourceforge.net下载排行第40位,下载量9,692,377

PSI

GPL

C++/QT+QCA

跨平台

google的官方网得到推荐使用

ttp://sourceforge.net下载排行第1782位,下载量1,943,875

Wippien

GPL

C++/WTL+ATL

win32/linux console

需要付费才能使用它的3个组件(establish Virtual Private NetworkClient ActiveXwodAppUpdate ActiveX component

 

Gajim

GPL

Python/C/GTK

LinuxBSDWindows

主要用PythonGTK开发

 

Spark

GPL

Java

跨平台

 

 

2.1          Pidgin

2.1.1 版本2.4.0

2.1.2主页: http://pidgin.im

2.1.3 源码下载: http://sourceforge.net/projects/pidgin/

2.1.4 编译工具:Cygwin

2.1.5 编译步骤:

2.1.5.1  http://cygwin.com/下载setup.exe f:/Cygwin目录下

2.1.5.2  运行setup.exe 选择【下载不安装】下载(http://kambing.vlsm.org)安装包到f:/Cygwin目录下。安装包:bzip2,coreutils,gawk,grep,gzip,make,patch,sed,monotone,tar,unzip and wget (除了粗体字外其他包是默认选择)

2.1.5.3  安装Cygwin运行setup.exe 选择【从本地目录安装】下一步,选择根目录C:/Cygwin和本地包目录: F:/Cygwin

2.1.5.4  运行Cygwin。运行界面会提示你是第一次运行Cygwin 并自动设置home环境变量目录C:/cygwin/home.(注意home环境变量中不要包含空格或中文字符要不然会给你后面的工作带来麻烦,如果home环境变量已经被设置为C:/Documents and Settings,可以在我的电脑/属性/高级/环境变量删除home环境变量。从新启动Cygwin。另外我相信Cygwin 也有设置环境变量的命令)

2.1.5.5  输入命令 "wget http://gaim-extprefs.sf.net/winpidgin-build-fetcher.sh"并回车.

2.1.5.6  在当前目录执行命令"bash winpidgin-build-fetcher.sh"。当执行该命令时会自动在C:/cygwin/home/Administrator/pidgin-temp目录下载一些编译pidgin要用到的软件包 如图:1-1

1-1

下载完这些包后就自动安装这些软件包,最后自动下载pidgin-2.4.0源码包。Home 目录下文件如图1-2所示:

1-2

2.1.5.7  最后执行 make –f Makefile.mingw install 命令(第一次运行这个命令的时候 make 出现错误,接着从新输入这个命令 make 成功) 在目录: C:/cygwin/home/Administrator/pidgin-2.4.0/win32-install-dir下生成安装文件。

2.1.5.8 同时也可以参考http://blog.csdn.net/happyhell/archive/2008/11/19/3336086.aspx该文章详细介绍了Pidgin的编译方法。

2.1.6  Pidgin源码分析:

2.0开始,Pidgin已经实现UI与库分离。而且UI有两套,一套是基于GTK+的UI,另一套是基于控制台的文本UI

Pidgin: pidgin is the GTK-based version of Pidgin.

Finch: Finch is the text- sion of Pbased veridgin. It supports the same IM networks, but you can run it in a console window. You can use it on Linux, BSD, and other Unixes.

Libpurple: libpurple is the programming library that powers Pidgin and Finch. It''s responsible for connecting to all the IM networks, and for managing your accounts and preferences. It''s written in C and makes heavy use of Glib.

 

2.1.6 :

Cygwin Cygwin is a Linux-like environment for Windows. It consists of two parts: A DLL (cygwin1.dll) which acts as a Linux API emulation layer providing substantial Linux API functionality.  A collection of tools which provide Linux look and feel.

MinGW:  A collection of freely available and freely distributable Windows specific header files and import libraries combined with GNU toolsets that allow one to produce native Windows programs that do not rely on any 3rd-party C runtime DLLs.

2.2  Miranda(迷人安达)

2.2.1 版本0.7.3

2.2.2 主页: http://www.miranda-im.org/

2.2.3 源码下载: http://sourceforge.net/projects/miranda/

2.2.4 编译工具:VS2005

2.2.5 编译步骤:

2.2.5.1源代里面的工程是VC6.0 VS2005 工具打开(VC6工程转换成VC8)并在解决方案里移除vc6.rc文件,添加resource.hresource.rcversion.rc文件。

2.2.5.3  编译工程(选择生成类型为win32 unicode exe文件)。

2.2.5.4  bin/ debug unicode目录下生成miranda32.exe。目前这个文件还不能正确运行,还需要一些相关文件(相关dll文件也可以用前面提到的方法编译得到)

2.2.5.5  miranda32.exe 拷贝到miranda-im-v0.7.3-unicode(在源码下载页面里面能看到这个文件夹的下载链接)文件夹下,并替换掉以前的miranda32.exe文件。

2.2.5.6 如果你用的工具是vs2005也可以直接在目录:../Miranda   IM/miranda-im-v0.7.3-src/miranda/bin8 打开解决方案文件miranda32.sln

 

 

 

2.3.1 版本0.11

2.3.2 主页: http://psi-im.org/

2.3.3 源码下载: http://sourceforge.net/projects/psi/ 要求QT4.2.3 +QCA 2.0.

2.3.4 编译工具:VC2005

2.3.5 编译步骤:

2.3.5.1  下载QT4.3.4windows商业安装版),安装目录C:/Qt/4.3.4

2.3.5.2  下载Win32OpenSSL-0_9_8g,安装目录C:/OpenSSL

2.3.5.3  下载psi-0.11源码,解压到C:/Psi-Qt4

2.3.5.4  下载 qca-2.0.0 源码 解压到C:/Psi-Qt4

2.3.5.5  运行VC命令行工具。

2.3.5.6  编译 qca: 输入命令 cd C:/Psi-Qt4/qca-2.0.0 ;qmake;nmake;编译完毕生成binlib文件夹。

2.3.5.7  增加path环境变量:C:/Qt/4.3.4/bin; C:/Psi-Qt4/qca-2.0.0/bin; C:/Psi-Qt4/qca-2.0.0/lib;另外还需要设置QTDIR环境变量: C:/Qt/4.3.4QMAKESPEC环境变量: win32-msvc2005

2.3.5.8 设置VC++目录的包含文件C:/Psi-Qt4/qca-2.0.0/include/QtCrypto; C:/Psi-Qt4/qca-2.0.0/include; C:/Qt/4.3.4/include;库文件: C:/Psi-Qt4/qca-2.0.0/lib; C:/Qt/4.3.4/lib78步骤中有些设置不是必须的)。

2.3.5.9  编译psi-0.11: 输入命令 cd C:/Psi-Qt4/psi-0.11; qmake; nmake debug;编译完毕生成debug目录(里面包含psi.exe文件),qcad2.dll文件拷贝到该目录下。

3  开源IM服务端比较

软件名

开源协议

开发语言及工具

运行平台

其他说明

源代码下载及说明

Openfire

GPL

Java

Windows,Linux,Mac

 

 

ejabberd

GPL

Erlang

Linux, Windows, MacOS X

 

 

Jabberd 1.x

GPL

C

Linux,Windows主要用于Linux

jabberd 1.4 is the latest version of the original implementation of the jabberd server. While not supporting some of the more advanced features of the Jabber protocols, it is stable, reliable and well tested.

 

Jabberd 2.x

GPL

C/C++

Linux,Windows主要用于Linux

jabberd 2 is the next generation of the jabberd server. It has been rewritten from the ground up to be scalable, architecturally sound, and to support the latest protocol extensions coming out of the IETF and JSF.

 

DJabberd

GPL

Perl

Linux

 

 

Jabber XCP:

 

 

Windows,Solaris ,GNU/Linux

 

 

http://swik.net/Jabber-linux/Jabber+XMPP+resource/%E5%B8%B8%E7%94%A8%E5%BC%80%E6%BA%90Jabber(XMPP)+IM%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%BB%8B%E7%BB%8D/od3z

4  C/C++编程GUI库比较 

http://blog.csdn.net/lostown/archive/2006/04/11/658654.aspx.QT功能是最强大的,还支持嵌入式GUI,开发资料也比较多。QT虽然有open source版,但是开发商用用途软件必须使用商业版,而且版权贵。

Pidgin 也叫 Gaim,是一个非常出名的开源软件。由著名程序员 Sean Egan(现在在google开发Gtalk)主持开发。这个软件是一个多协议集成化的即时通讯工具,可以支持AIMBonjour Gadu-Gadu Groupwise ICQ IRC MSN QQ SILC SIMPLE Sametime XMPP Yahoo! Zephyr, 并且它还支持IRC

Miranda IM 国外一种老牌的聚合聊天软件,通过安装丰富的插件可以支持例如QQICQAIMMSNJabber (gtalk使用的协议) YahooGadu-GaduNetsend以及其他一些聊天协议。

Psi也是款不错的开源软件在名气上不如前两个,关于它的介绍也比较少。

 

原创粉丝点击