PALM與LINUX的親密接觸

進行步驟:
不論您的核心是那一板,基本上都要將palm和PC中間的同步座(或同步線)接好(廢話)。
接著讓我們認識一下,掌管linux和palm連線的套件在底層部份是由pilot-link所掌管的。所以沒裝套件的請趕快裝,您可以用apt-get install pilot-link,yum install pilot-link或是在X windows下使用新增移除來加上pilot-link的套件。但是...也請到http://www.pilot-link.org/將原始套件給下載下來,原因後述。而因為2.6.9版之後的核心實作了udev的概念,所以驅動方式不同,其分述如下:


針對2.6.9以前的核心:
之前的核心很簡單,重點在有沒有建立ttyUSB*的捷徑給pilot,所以在確定pilot-link存在(已裝好)的狀態下,建立捷徑就行,指令的下法是"ln -s /dev/ttyUSB1 /dev/pilot",其中ttyUSB1也可以是ttyUSB0,這看個人喜好,不過通常是用ttyUSB1啦!
建立了之後,您可安裝j-pilot的套件(apt-get install jpilot,yum jpilot,您可以自由選擇安裝方式),在X-windows下將j-pilot的喜好設定設定好你的連接port後按下"同步"和palm上的hotsync...恭喜你,完成同步,在此建議,使用Evolution(類似微軟的outlook)可以將資料同步進去悠!試試看吧!...啥!你說碰到大問題了悠!知道`~我知道你的問題是啥!等一下會說的!你別緊張啦! [以上感謝www.tompda.com論壇上的tonnyx前輩,因為您的心得分享,才使小弟能開始進入palm與linux連線的世界。]

針對2.6.9以後的核心:udev-039-10.FC3.6
在2.6.9之後的核心因為引入了udev的概念,所以當您到/dev看的時候...ttyUSB*不見了...所以用以前的連線方法就會造成困難。在以下動作進行之前請先確認一下您的套件是否正確。確定的指定如下"rpm -qa udev",在FC3在更新過後的版本是udev-039-10.FC3.6,如您的套件早於此編號之前,請將其使用atp或yum更新。但初學者請不要自己去抓網站或ftp上的rpm更新,因為此套件似乎和核心有緊密相依的特性,版本更新不對會有些問題出現。更不要像我笨到在更新發現錯誤後再用rpm -e的指令將套件移除...然後...發現我的linux被自己搞死了@_@|||。在確定套件的版本正確後,我們必須作一些設定,請切換目錄到/etc/udev/rules.d/底下,指令的下法是"cd /etc/udev/rules.d/"。然後在此目路下建立一個叫10-local.rules的檔案,因為小弟喜歡用vi所以小弟所下的指令會是"vi 10-local.rules"。檔案的內容如下,請參考:

# cat /etc/udev/rules.d/10-local.rules
KERNEL="ttyUSB1",SYMLINK="pilot"

建立好之後存檔離開,並讓全部的user對10-local.rules擁有可讀的權限,其命令的下法如下"chmod 644 /etc/udev/rules.d/10-local.rules"。接下來如2.6.9版的建立ttyUSB和pilot-link的捷徑,命令下法為"# ln -s /dev/ttyUSB1 /dev/pilot"。接者可能的話將機器重開...然後接上palm並使用終端機到/dev用ls tty*觀察,在按下palm的hotsync後應該會有ttyUSB0和ttyUSB1跑出來(請多下幾次ls tty*,因為ls是不會回溯更新的)。出現的話就是有訊號連接了,沒有的話請注意以下事項:1.請重新啟動udev,您可以下start_udev的命令來作啟動。2.請注意您的連接線是否接好,尤其是M5系列的(包括TT,TC,T2等...),使用非原廠的連接線很容易讓腳位對不到正確的位置,導致訊號無法傳輸。確定有訊號後,您可使用gnome-pilot搭配Evolution來同步!

編碼問題:
在同步之後,您會發現同步到linux端的中文都變成亂碼了!這是因為pilot-link使用的編碼是UNICODE,但在palm上面卻是使用Big5編碼!所以無法轉譯。但由參考資料看來要修改的地方是會被編譯成lib的,所以看來是無法直接去改改東西就好了!這樣的話,就來編一下套件吧!前面有請各位先將pilot-link的套件下載回來吧!請將其放在/tmp的目錄中作業,將檔案解壓,您可以用"gzip pilot-link-0.11.8.tar.gz"來將其還原成tar檔(請注意,pilot-link因時間所以版本會有不同,請依您的狀況修改)。再使用"tar xvf pilot-link-0.11.8.tar"將tar檔案解開。接著進入pilot-link-0.11.8目錄中,我們要修改其中的一個檔案,將其語系改成Big5的編碼,檔案是pilot-link-0.11.8/libpisock下的util.c。更改裏面的#define PILOT_CHARSET "CP1252",將"CP1252"改成"Big5"後存檔。接者在pilot-link-0.11.8/目錄下用命令"./confiugre"來設定安裝環境,設定後再下"make"來編譯,最後下"make install"安裝(這部份建議參考pilot-link-0.11.8下的README,直接安裝到tmp去就好!因為我們只需要編譯完成後的lib檔)。接者您找一下在安裝後的目錄裡有叫lib的目錄夾,裏面有如libpisock.a、libpisock++.so、libpisync.la...等檔案,這些是我們要的,然後請將這些檔案copy到/usr/lib下就可以了!請重開機後再用Evolution同步,看!中文就是中文正常了吧!但是...不知為合!似乎j-pilot還是無法解決亂碼的問題,希望有心得的先進能再trytry看!
在這感謝摩托學員的aprotoss和Zombie先進!尤其是aprotoss也提出了在Debian下的更好解決方案,請在學園上參考"使用gpilot+Eevolution來同步pda"的討論主題。


parrotchang 發表在 痞客邦 PIXNET 留言(0) 人氣()