eliu兄好: 最近這幾週常出現gcin tray icon與 OSD icon莫名消失的狀況,如下圖所示:
出現原因還不確定,請問有什麼方法可以幫忙除錯? 感謝~
|
在 ~/.bashrc 加入
ulimit -c 10000000
如果 gcin 當掉,會產生 ~/core*
的 coredump file。先確定是不是 gcin 當掉。用 terminal 執行 'file core'
會看到 core 是什麼 executable 產生的。
某些 distribution 會用 core.xxxx,xxxx 是 process id.
edited: 1
|
eliu |
在 ~/.bashrc 加入
ulimit -c 10000000
如果 gcin 當掉,會產生 ~/core*
的 coredump file。先確定是不是 gcin 當掉。用 terminal 執行 'file core'
會看到 core 是什麼 executable 產生的。
某些 distribution 會用 core.xxxx,xxxx 是 process id.
|
~/.bashrc已加入ulimit -c 10000000
但今天還沒有出現類似狀況,所以還沒有看到core檔。 不過今天打字過程倒是當掉了幾次,畫面上所有可供中文輸入的應用程式全都停擺沒回應。 gcin tray icon還可以點,gcin-tool也能開,但是涉及到會叫出gcin的部份(如:輸入字型大小的小方框)就會停擺。 放幾張寫真照給大家看看:
另外,前幾天gcin-tool也出現另一個奇景:
|
用五四三倉頡打完這段話按Enter,leafpad、iceweasel、Libreoffice都停擺, 叫出lilyterm,輸入pkill -9 gcin,馬上所有停擺的程式都回復正常。 我有重複打這句再試一次,但無法重複出現當掉的狀況。
|
抱歉,這幾天發現「gcin當掉」和「圖示消失」似乎是2回事, 小弟還是先針對「圖示消失」一事繼續回報:
剛剛又出現了1次,過程是這樣的: (1) 使用firefox時,gcin的OSD圖示莫名變成2個「X」圖案,但是tray icon是2個空白區域, 此時gcin仍可正常打字,就像上次的附圖一樣:
(2) 但此時若讓打字游標的focus離開firefox,則會造成gcin crash (例如:新開一個leafpad) gcin icon會自tray列被刪除(那2個「空白區域」也不見了,有點像是點了「重新啟動gcin」的效果) 此時,firefox也會整個當掉。
(3) 過個幾秒再開其他gtk應用程式,gcin可以被叫出,但是firefox仍是死在那裡動彈不得 有在.bashrc加入ulimit -c 10000000,但是沒有發現任何~/core檔案
請問是否有其他測試方法?感謝~
edited: 1
|
那個 icon 跑出來的問題肯定不是 gcin 的問題,是 panel 的問題。gcin 只用 gtk 的 api,沒有能力造成這樣的問題。
|
eliu |
那個 icon 跑出來的問題肯定不是 gcin 的問題,是 panel 的問題。gcin 只用 gtk 的 api,沒有能力造成這樣的問題。
|
那關於把輸字游標移到其他gtk應用程式時(如:leafpad,這時應該會呼叫1個新的gcin?)會讓gcin crash的問題, 有沒有什麼方法可以進一步測試? 不知道有何方法能從終端機看到gcin的錯誤訊息?
感謝~
|
剛剛用firefox時,圖示變成2個「X」的狀況又出現了, 雖然gcin icon在tray變成2個空白區域,但還是可以點, 我點了「重新啟動gcin」,但是反而造成firefox卡住,且無法啟動其他應用程式(如:leafpad) 這時下了pkill -9 ogg123,就一切正常了!
難道這和之前回報的「使用gcin發音時,許多ogg123一直卡在行程中」有關?
總之,目前這個狀況看似有點像是「gcin卡住了,而其他應用程式也被絆住」, pkill gcin或gcin衍生的行程,則應用程式可恢復正常運作。(只是推測,不太確定)
|
如果 gcin source 已經有 build gcin deb 過
cd gcin-source gedit config.mak
rm *.o make sudo rm /usr/bin/gcin sudo cp gcin /usr/bin
重新執行 gcin
coredump 產生 core file 可以用
gdb /usr/bin/gcin core
看是當在哪裡
edited: 1
|
eliu |
cd gcin-source gedit config.mak
rm *.o make sudo rm /usr/bin/gcin sudo cp gcin /usr/bin
重新執行 gcin
gdb /usr/bin/gcin core
|
已經依照eliu兄的程序做了,改config.mak裡的內容,make,並把gcin取代舊gcin 但是剛剛gcin用五四三倉頡時明明當了好幾次,卻都一直看不到core檔, 所以沒有機會用gdb查 core內容
不知道這個問題能不能用gcin source裡的tval來測試?
↑當我沒說,剛試了一下,慢得要命!
感謝~
edited: 1
|
我覺得 icon 消失的問題與 ogg123 有關,建議先把發音的功能關閉。
|
|
eliu |
試試最新的 gcin.tbz 看有沒有改進
|
感謝 eliu兄!!! 發音完後行程裡不再留有ogg123!!! 也沒有再因為這樣使得其他應用程式當掉了! 不過gcin還是會莫名重新啟動,這個小弟還會再研究看看是怎麼一回事,感謝~
edited: 1
|
今天又再出現問題了,陳述過程如下:
(1)使用Libreoffice時突然發生的 發音功能先停擺,同時tray icon變空白,OSD變成XX, 此時在Libreoffice裡中文狀態尚可正常使用(除了不能發音以外), 但按capslock進英文狀態無法出現英文字的候選字清單。(←這點很奇怪!)
(2)試著開啟其他使用gtk im-module的程式時(如:leafpad) 第一次開啟leafpad時,不但leafpad開不起來, Libreoffice以及所有當下支援gtk-immodule的應用程式全都freeze, gcin tray icon那個空白區域消失(就好像按了「重新啟動gcin」一樣)
(3)再開第2次leafpad,leafpad已能開得起來 在這個新開的leafpad裡,gcin可正常使用(發音也正常)。 但是剛剛的Libreoffice和其他使用gtk-immodule的應用程式仍維持在freeze狀態。
(4)這時rxvt裡下指令ps -e 可以看到有幾個ogg123留在行程裡, 下指令pkill -9 ogg123後,原本freeze的Libreoffice和其他使用gtk-immodule的應用程式才回復到正常。
看起來有點像是gcin crash後一直卡在行程裡無法被清除, 而且一併拖累當下正在使用gcin的所有應用程式。
|
補充一下,最近偶爾有這種狀況:
打開隨身碟裡的一些檔案,用gcin打字並存檔,關閉所有編輯隨身碟內檔案的應用程式, 但仍發現隨身碟無法被umount, 得要pkill -9 gcin或按「重新啟動gcin」之後,隨身碟才能被umount。
看似是系統認為和隨身碟相關的行程gcin還在執行中,所以隨身碟不能被umount。
|