歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux資訊 >> 更多Linux >> Linux下使用aMsn詳解

Linux下使用aMsn詳解

日期:2017/2/27 9:33:07   编辑:更多Linux

aMSN這一款在Linux下的Msn就不多介紹了,0.95版出來後加入了攝像頭,在加上其文件傳輸功能,你還留戀於gaim麼?  經過多天的搜索和嘗試,終於在Fedora Core3裡用上amsn了。其實安裝amsn並run起來不難(不過我基本上從不能運行到能運行,不能輸入任何字符到能輸入英文,不能輸入中文到能輸入中文的問題都遇到了,還遇到程序段錯誤等等,也夠衰的了),尤其是中文輸入的問題是有點麻煩,因為開發amsn的語言是Tcl/tk, 對中文的支持不是太好,加之amsn-0.95需要tcl/tk 8.4以上支持,故以前jserv兄的tcl/tk 8.3 XIM patch不能用了,不過前幾天他推出了一個diff,總算讓偶找到了,活活。ok,閒話不多說了。安裝amsn的必要條件:  1.gcc之類編譯工具必不可少,涉及相應類庫,如果你在編譯時出錯,煩請自己上網搜相應的包安裝.  2.tcl8.5a3-src.tar.gz  3.tk8.5a3-src.tar.gz 以上兩個包都可以在tcl/tk的官方網站下載得到  4.amsn-0.95.tar.gz 這裡需要說明一下,amsn.sourceforge.net上有很多amsn的版本諸如bin,rpm等,甚至有專為Fedora的rpm包,不過鄙人不推薦使用那些,在列表裡選取“other”,下載amsn-0.95.tar.gz。  5. tk-cvs-xim-fixes.diff 下載地址http://jserv.sayya.org/tcl-i18n/tk-cvs-xim-fixes.diff   當獲取這些文件後,我們將之放在/home目錄下  為了造成不必要的困擾,先刪除系統中自帶的tcl和tk CODE: [root@localhost ~]#rpm -qagrep tcltcl8.4*****[root@localhost ~]#rpm -e tcl[root@localhost ~]#rpm -qagrep tktk8.4*****[root@localhost ~]#rpm -e tk  如果卸載tcl發現有其他安裝包依賴於tcl,如果那些包不重要,就先刪那些包,當然你也可以rpm -e --nodeps tcl卸載。 CODE: [root@localhost home]# tar xvzf tcl8.5a3-src.tar.gz[root@localhost home]# tar xvzf tk8.5a3-src.tar.gz  在安裝它們之前需要先進行diff打patch,命令很簡單:patch -p0 < tk-cvs-xim-fixes.diff 不過為大家解析一下jserv大大的這個patch文件內容,這樣理解起來大家更容易些,中文輸入都是我說的話(針對Linux菜鳥,汗!其實偶也是菜鳥)


CODE: Index: generic/tkEvent.c===================================================================RCS file: /home/tk8.5a3/generic/tkEvent.c,v //遭修改的文件 tkEvent.cretrieving revision 1.31diff -u -p -r1.31 tkEvent.c--- generic/tkEvent.c 4 Nov 2005 11:52:50 -0000 1.31+++ generic/tkEvent.c 4 Jan 2006 06:31:19 -0000@@ -449,8 +449,10 @@ InvokeInputMethods( //大概在449行左右的位置,在InvokeInputMethods方法裡 XSetICFocus(winPtr->inputContext); } }- if (XFilterEvent(eventPtr, None)) { // 刪- return 1; //刪+ if (eventPtr->type == KeyPress eventPtr->type == KeyRelease) { //增加的內容+ if (XFilterEvent(eventPtr, None)) { //增加+ return 1; //增加+ } //增加 } } return 0;Index: unix/tkUnixEvent.c===================================================================RCS file: /home/tk8.5a3/unix/tkUnixEvent.c,v retrieving revision 1.19diff -u -p -r1.19 tkUnixEvent.c--- unix/tkUnixEvent.c 7 Dec 2005 17:32:52 -0000 1.19+++ unix/tkUnixEvent.c 4 Jan 2006 06:31:20 -0000@@ -334,19 +334,22 @@ static voidTransferXEventsToTcl( Display *display){- int numFound; XEvent event;- numFound = QLength(display);- /*- * Transfer events from the X event queue to the Tk event queue.+ * Transfer events from the X event queue to the Tk event queue+ * after XIM event filtering. KeyPress and KeyRelease events+ * are filtered in Tk_HandleEvent instead of here, so that Tk's+ * focus management code can redirect them. */-- while (numFound > 0) {+ while (QLength(display) > 0) { XNextEvent(display, &event);+ if (event.type != KeyPress && event.type != KeyRelease) {+ if (XFilterEvent(&event, None)) {+ continue;+ }+ } Tk_QueueWindowEvent(&event, TCL_QUEUE_TAIL);- numFound--; }}下面安裝這些軟件:

CODE: [root@localhost home]# cd tcl8.5a3[root@localhost home]# cd unix[root@localhost home]# ./configure --prefix=/usr \ --enable-gcc \ --disable-threads \ --disable-shared [root@localhost home]# make clean [root@localhost home]# make[root@localhost home]# make install CODE: [root@localhost home]# cd tk8.5a3[root@localhost home]# cd unix[root@localhost home]# ./configure --prefix=/usr \ --enable-gcc \ --disable-threads \ --disable-shared \ --enable-xft \ --disable-symbols[root@localhost home]# make clean[root@localhost home]# make[root@localhost home]# make install非常關鍵的兩個link!!!

CODE: [root@localhost home]#ln -s /usr/bin/wish8.5 /usr/bin/wish[root@localhost home]#ln -s /usr/bin/tclsh8.5 /usr/bin/tclsh最後解壓amsn-0.95.tar.gz CODE: [root@localhost home]# tar xvzf amsn-0.95.tar.gz[root@localhost home]# cd amsn -0.95[root@localhost home]# ./configure --with-tcl=/usr/lib && make clean && make 最後運行amsn ,大功告成! CODE: [root@localhost home]# ./amsn



Copyright © Linux教程網 All Rights Reserved