免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 7206 | 回复: 0
打印 上一主题 下一主题

[桌面系统] [转]彻底解决amsn中文输入和显示问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-02-23 06:15 |只看该作者 |倒序浏览
【原创】AMSN 0.95+中文输入解决方案                       
                       
                                                                                                                            
                       
                                                                                                                这两天在自己机器上安装了AMSN 0.95,和许多初用AMSN的朋友一样,面临中文输入的问题,所以在网上找来一堆资料一一尝试,测试了两天都不太满意,网上公布的资料大都有如下几类问题:

(1).给TCL/TK打上输入法补丁,在输入中文时先按shift+空格键调出一个临时输入框,然后再用你的中文输入法在这个输入框里输入中文,然后点发送,就将要输入的中文插入到AMSN的输入框里了.这种方式我测试过可行,但比较麻烦,好好的一个聊天,硬是多了一次中 转过程,用得不爽是肯定了.

(2).用给AMSN挂中文输入插件的方式,这种方式也可行,但是网上的插件多是针对AMSN 0.92-0.94之间的版本,新版本的无法使用,很多朋友照着文章介绍的方法去下载插件,然后解压至AMSN的插件目录后,发现根本无法使用.

(3).某些文章介绍的使用方法过于繁琐,不太利于新手使用,本人在这两天的测试过程中就碰到过很多的问题.

今天无意在网上看到Nemo II的一篇关于TCL/TK中文输入的资料,虽然只说了寥寥几句,并且文章中提到的要修改的文件名写错了,但是却给了我尝试新方法的思路,于是自己重新编译并安装了TCL/TK和AMSN,发现中文输入问题果然得到解决.在此向Nemo II表示感谢.

现在将我的安装过程介绍一下,免得想使用AMSN的朋友走很多弯路:

(1).首先检查机器上的TCL/TK环境,如果没有安装的话最好,如果有安装请先将其卸载.如何查看是否有安装TCK/TK,用rpm -qitcl及rpm -qi tk就可以看到当前机器中的版本信息.然后用rpm -e tcl和rpm -etk,如果存在包依赖关系,请先将其他包删除,比如我就删除了如下几个包:amsn,tk-8.4.9-3,setools-2.1.2-1.1,tk-8.4.9-3.

(2).下载目前最新的TCL/TK 8.5a4源码,有两个包,一个是tcl8.5a4-src.tar.gz,另一个是tk8.5a4-src.tar.gz,这两个都下载回来.然后下载AMSN 0.95源码.

(3).解压缩刚才下载的三个包,并且修改一个头文件

安装TCL:
        代码 (双击代码复制到粘贴板)        [root@SafeNet ~]#tar -vxzf tcl8.5a4-src.tar.gz
[root@SafeNet ~]#cd tcl8.5a4/unix
[root@SafeNet unix]#./configure --prefix=/usr;make -j20;make install
[root@SafeNet unix]#cd /usr/bin
[root@SafeNet bin]#ln -s tclsh8.5 tclsh       

由于这个tcl8.5a4安装完成后在/usr/bin里的文件名叫tclsh8.5而不是tclsh,所以这里注意要做个联接,否则后面编译TK或AMSN时会报错.另外安装后将库文件装在/usr/lib/tcl8.5下面,而我的机器里在/usr/lib下面有三个tcl的库目录(前两个为以前系统里自带的),一个为tc,一个为tc8,另一个就是刚才装的tcl8.5,为了保证不出问题,我删除了原来的tc这个目录,然后将tc8.5目录联接到tc,也就是在/usr/lib目录下执行了如下命令:

[root@SafeNet lib]#rm -rf tc
[root@SafeNet lib]#ln -s tc8.5 tc

到底要不要这么做,用户自己看着办,反正我是这么做了.

安装TK:
        代码 (双击代码复制到粘贴板)        [root@SafeNet ~]#tar -vxzf tcl8.5a4-src.tar.gz
[root@SafeNet ~]#cd tk8.5a4/generic       

到这里要注意了,解压后进入源安装文件目录中的generic目录,因为要修改一个头文件,以实现中文输入支持.
编辑generic目录下的tkInt.h头文件,在顶部加入如下代码:
        代码 (双击代码复制到粘贴板)        #ifndef TK_USE_INPUT_METHODS
#define TK_USE_INPUT_METHODS
#endif

#ifndef TK_XIM_SPOT
#define TK_XIM_SPOT 1
#endif       

修改完后,保存退出,回到tk8.5a4下的unix目录
        代码 (双击代码复制到粘贴板)        [root@SafeNet unix]#./configure --with-tcl=/usr/lib;make -j20;make install;
[root@SafeNet unix]#cd /usr/lib       

安装完后,回到/usr/lib,在这里我同样删除了以前tk目录,然后将tk8.5联接到了tk,如下命令:
        代码 (双击代码复制到粘贴板)        [root@SafeNet unix]#rm -rf tk
[root@SafeNet unix]#ln -s tk8.5 tk       

如果顺利安装编译并安装上TCL/TK的话,那么恭喜你,离成功就不远了.如果编译过程中有碰到问题,请自行参考相应资料解决.

安装AMSN:

安装AMSN相对比较简单,先将文件解压后不带任何参数编译并安装即可.如下:
        代码 (双击代码复制到粘贴板)        [root@SafeNet amsn-0.95]#./configure;make -j20;make install;       

最后,祝大家都能顺利用上最新的AMSN并且中文输入不再让人心烦.

测试环境:RedHat Fedora FC4 + Fcitx V3.2

Allan at SuperCN.ENT 2006.06.01


########################################################

下面是我自己测试的结果:
Deibian, SCIM输入法, amsn 0.97
安装amsn的时候有个错误,找不到/usr/bin/wish . 只要把wish8.5连接到wish就行了。比如
[root@SafeNet amsn-0.95]#ln -s wish8.5 wish
其它都是按照上面的步骤安装成功的。
原帖: https://dream4ever.org/showthread.php?t=108842
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP