一、Gaim是什么?
用Windows还是用Linux?很多时候,我们选择的理由往往是一两个必不可少的或者用的顺手的软件。Windows显然不是最好的,但是Windows平台中的许多优秀软件留住了我们。
然而,Linux的开发者一刻没有停止追赶的步伐,即便是在相对比较薄弱的桌面应用领域,仍然是新秀辈出,大有后来居上的势头,典型的例子就是Gaim。
Gaim最初是作为AOL的即时通讯软件AIM的客户端进行设计的,从它的名字也能看出来,Gaim其实就是GNU AIM。在即时通讯领域,另起炉灶和Windows中的巨头竞争显然是不现实的,于是Gaim的开发者寻找到了一个绝妙的切入点。Gaim本身并不具备通讯功能,而是使用插件(通常一个插件就是一个扩展名为so的库文件,或者在Windows中就是扩展名为DLL的动态链接库),因此具有博采众家长的后发优势。得益于模块化的设计思想和源代码的开放共享,Gaim迅速成长起来。
如果你想在Gaim中用MSN,那么就使用MSN插件、如果想用Yahoo Messenger,就使用Yahoo Messenger插件,总之可以无限扩展。Gaim还有一个绝活,就是可以同时加载多个插件,也就是说,只要打开Gaim,你就可以同时使用多个即时通讯软件,再也不必像Windows中那样手忙脚乱地在不同软件中切换了。这样的软件结构还具有系统资源消耗小、操作方法统一规范的优点。不足之处也有,就是某些即时通讯软件所特有的功能无法使用,比如QQ插件目前还没有提供短信发送功能。不过话又说回来,Gaim并没有将软件的特色功能拒之门外,而是提供了“协议功能”来使软件的特色功能得以实现,至于到底能不能用,那就要看插件开发者有没有设计了。
Gaim的安装版本中附带有很多流行的通讯插件,比如Yahoo通、MSN Messenger、ICQ、AIM、IRC等等。
如果你还不想仅仅因为使用Gaim而放弃相伴多年的Windows系统,没关系,Gaim最近已经被移植到了WIN32平台上。开源开放的巨大威力再次显现--软件适用用户而不是用户去迁就软件。有了Gaim for Win32,你在Windows中你一样可以享受Gaim的强大功能。
二、Gaim的使用
Gaim通过一个统一的界面实现了所有得到支持的即时通讯软件的基本功能,这些基本功能包括收发讯息、管理聊天记录、管理用户列表等等。
1、界面结构
Gaim的界面结构最大的特色是使用了标签页,分别是在线用户列表和用户管理,讯息收发和用户管理可以在同一个窗口中完成,比较方便。另外Gaim的工具拦在界面的下方,主要功能是添加/删除用户和组。在菜单当中,“工具”菜单是最常用的,一般用来进行插件和帐号的管理。图 1。
图 1
2、插件管理
在使用Gaim之前,首先至少要加载一个插件,选择“工具->插件”可以打开插件管理窗口。在这个窗口中单击“加载”然后选择需要加载的插件。不论使用哪一个即时通讯软件都必须首先正确加载插件。你可以同时加载多个插件,这样你就可以同时使用多个即时通讯软件了。图 2。
图 2
3、帐号管理
使用“工具->所有帐号”可以打开帐号管理窗口,在这个窗口中单击“添加”来添加新的帐号。在帐号设置中最重要的是选择帐号所使用的协议,在这里每一个协议对应一个插件,因此,必须加载需要的插件后,协议列表中才会出现相应的条目。帐号设置对话框中需要设置的基本项目包括登录名、密码等。需要注意的是,不同的即时通讯软件对登录名有不同的定义,比如QQ是号码,而MSN则是邮件地址,不过他们在Gaim中通称为“登录名”。图 3。
图 3
4、收发讯息
在用户列表或者用户管理列表中右击用户名,选择“即时消息”,即可以发送消息,Gaim的消息发送窗口和ICQ的非常相似,而且不管你使用哪一个插件,消息发送窗口都是一样的。在讯息编辑窗口中你可以设置文本的格式,如大小和颜色等等。另外Gaim也支持很多即时通讯软件都提供的“表情”功能,不过为了保证正确显示,Gaim会将笑脸转换成文本格式发送,比如“笑脸”一律被转换成“:-)”。如果对方使用Gaim收取消息,将会显示为图片,用其他软件收取就会显示为文本的表情符号。图 4。
图 4
5、协议动作
有的即时通讯软件有一些特有的功能,比如在QQ中加为好友经常需要进行身份验证,这些功能在Gaim中通过“协议动作”来进行。打开“工具->协议动作”,然后选择帐号,再选择动作即可启动。目前插件提供的协议动作都很有限,但是这至少说明Gaim不是封闭的,只要开发者愿意,几乎每一个即时通讯软件的所有功能都可以在Gaim中实现。
6、IRC聊天功能
Gaim支持IRC,这对很多朋友来说是一个惊喜,而IRC功能的使用同样简单,你只需要加载Gaim自带的libirc.so插件就可以了。IRC帐号的设置没有什么特别之处。不过IRC成功登录后界面上不会有反馈,你必须单击“工具栏”中“开始聊天”按钮进入IRC的聊天室。这里有一个不足,Gaim不能显示IRC服务器上的聊天室列表,因此你必须事先知道聊天室的名字才能够进入。比如你想进入的聊天室名为Gaim,那么你必须输入#Gaim。
三、QQ Plugin For Gaim
下面以Gaim的QQ插件为例介绍一下Linux中Gaim的使用方法。
Gaim的QQ插件其实早已问世,虽然一度受到腾讯公司的打压,但是在网络上仍然广泛流传,可以非常轻松地获得。
Gaim的QQ插件全名为QQ plugin for Gaim,由邹丹开发,在eNet上可以找到下载。目前的QQ plugin for Gaim只能用于Gaim 0.58及更低的版本,好在0.58和0.60的区别不会太大。下面就来详细介绍一下QQ Plugin for Gaim的安装方法。顺便说一下,QQ plugin for Gaim还有一个优点就是不会收广告,包括用消息形式发送过来的广告。
1、安装Gaim 0.58
如果你的系统中使用Gaim版本高于0.58,首先将其卸载。比如Redhat8.0中默认安装的是0.59,可以按照以下步骤将其删除:
执行:
rpm -qa|grep gaim
这个命令查询当前系统中已经安装的软件包并找出其中的Gaim,-q表示查询,a表示查询所有的软件包,后面使用重定向运算符将rpm -qa的结果(一长串软件包的名称)交给grep,让它找出其中含有关键字gaim的那一行。这个命令的输出结果就是系统中已经安装的Gaim的全称。比如输出了gaim-0.59。下面删除这个包:
rpm -e --nodeps --force gaim-0.59
在这个命令中,-e表示删除软件包 --nodeps表示不检查软件包的倚赖关系 --force表示强制删除。(注意后两个参数前面是双划线)。
接着下载一个Gaim 0.58的RPM包进行安装:
rpm -ivh gaim-0.58.rpm
2、安装QQ插件
QQ插件的安装很简单,直接将so文件拷贝到/usr/lib/gaim目录中就可以了。不过要注意插件的版本号一定要和系统中安装的gcc的版本号一致,从文件名中一般可以看出来。目前用于Gaim 0.58的QQ插件有两个libqq-0.0.3-ft-0.58-gcc296.so和libqq-0.0.3-ft-0.58-gcc304.so,从文件名中就可以看出,这两个插件分别用于不同版本的gcc的(其实是glibc)。要想知道自己的系统应当使用哪一个,可以执行:
gcc --version
看一下当前的gcc版本。
3、加载和使用插件
现在启动Gaim,如果找不到Gaim的安装位置,可以执行以下命令看一下:
rpm -ql gaim-0.58|more
这个命令同样用-q来查询,不过q后面是l,表示查询软件包所安装的软件的列表,然后将结果交给more分屏显示。
启动Gaim后,在主界面中单击“工具->插件->加载”,选中上一步中安装好的库文件,然后确定。回到主界面中单击“工具->所有帐号->新建”建立一个新帐号,设定好QQ号码和密码,一定要选择协议为QQ。最后单击“登录/离开”就登录了。
4、安装过程中常见的问题
安装过程中最常见的两个问题是
1)提示libstdc++-libc6.1-1.so.2(或者类似的文件)找不到,出现这个问题的原因通常是glibc的版本过高,可以使用一个符号链接来解决,具体步骤如下:
cd /usr/lib
ln -sf libstdc++.so.5.0.0 libstdc++-libc6.1-1.so.2
libstdc++.so.5.0.0是系统中已经存在的库文件,上面的命令将会建立一个新文件libstdc++-libc6.1-1.so.2,这个文件指向已经存在的那个库文件。这种方法其实就欺骗一下程序,因此这个方法不是总的有效,你应当尽可能使用和gcc版本相匹配的插件。
2、长时间无法登录,这个问题一般是由于系统的放火墙的级别设置过高引起的。如果你用Redhat可以将放火墙的级别设置为“中”或者“低”即可。这里说明一点,Redhat8.0附带的安全级别设置工具有一个小Bug,就是每次启动时都会显示安全级别为高,不论系统实际级别是什么。如果设置安全级别无法奏效,干脆直接关闭放火墙:
/etc/rc.d/iptables --stop
四、Gaim for Win32
Gaim for Win32是Gaim在Windows中的版本。你可以在http://sourceforge.net上可以找到下载,目前的最新版本是0.61。
在安装这个软件之前首先必须安装GTK,GTK是GIMP(GIMP是GNU的图片处理软件) ToolKit的缩写,最初是为了开发GIMP而设计的一个图形界面开发包和执行环境,由于其出色的设计和性能,现在有很多程序都使用GTK,包括大名鼎鼎的桌面环境GNOME。在Linux中如果要使用基于GTK的应用程序,必须安装GTK的运行库,同样在Windows中也是如此。在这个网址http://www.dropline.net/gtk中可以下载Windows条件下的GTK运行库,由于这个软件包不仅仅包含GTK运行库,因此其正式的名称是GTK运行环境。这个网站提供了GTK的“执行环境”、“开发环境”和“源代码”三种下载。如果仅仅是想使用GTK,而不是要修改它的源代码进行二次开发,你只需要下载“执行环境”就可以了,大小只有4.7M。
安装好GTK执行环境后,你就可以安装Gaim for Win32了。Gaim for Win32和Linux版本的使用方法大同小异,不再赘述。
由于Gaim for Win32推出的时间并不长,界面比较简陋,对中文的支持也不是很好,有一些菜单项还显示的是英文。图 5。
图 5
遗憾的是,Gaim for Win32目前还无法使用QQ插件。在目录C:\Program Files\Gaim\plugins中可以看到很多DLL(Windows中使用的动态链接库),每一个DLL对应一个插件。如果将来得到QQ的插件可以将其拷贝到这个目录中。简单看一下Gaim的安装目录,你就可以发现GNU的软件共有的一个特色:目录结构是开放式的。比如在pixmap中存放了软件中出现的所有按钮中出现图片,如果你对哪一个不满意可以直接修改——你不再是软件用户,而是软件的所有者。
五、Gaim的未来
Gaim作为开源免费的软件,有很多商业软件无法比拟的优势。首先,Gaim以GPL协议发布(包括Gaim for Win32),用户不必为使用Gaim承担任何费用,吸引力显然是很大的。其次,Gaim的开发者没有盈利压力,不会亟功近利,这体现在Gaim稳扎稳打、步步为营的开发战略上,你不必担心那天一起床发现“Gaim倒闭了!”。再次,用户对Gaim的信任度显然会比其他不开放源代码的商业软件要高,Gaim的开发者和许多GNU软件的开发者一样,可以自豪地宣布:Gaim可能会有Bug,可能有Flaw,但是绝对不会有backdoor。在网络信息安全日益受到关注的今天,这就是优势。
不会有财务困难、不会有信任危机,任凭即时通讯软件市场如何风云变幻,你需要做的只是添加或者删除一个插件。如此,Gaim的未来还会遭到质疑吗?