解決Firefox更新後中文無法輸入問題 Gtk-WARNING **: /usr/lib/gtk-2.0/2.10.0/immodules/im-scim-bridge.so: wrong ELF

來源:互聯網
上載者:User

當64位的Ubuntu運行32位的Firefox時,會出現無法切換中文IME這種情況,一般出現在手動更新了FF(32位)。
用終端運行FF,可以看到出現以下警告:
(firefox-bin:19124): Gtk-WARNING **: /usr/lib/gtk-2.0/2.10.0/immodules/im-scim-bridge.so: wrong ELF class: ELFCLASS64

問題的出現主要是由於FF需要32位的GTK版本,但無法找到其位置。
同理,很多的出現這種問題都是這個原因,像QQ,OpenOffice都有可能出現。

解決方案如下:(在運行命令時請確保許可權足夠)
一、複製32位的so檔案
複製32位的兩個so檔案到指定的目錄下。

即把 32位系統的:
/usr/lib/gtk-2.0/2.10.0/immodules/ 的
-rw-r--r-- 1 root root 67648 2008-07-31 15:31 im-scim-bridge.so
-rw-r--r-- 1 root root 143588 2008-07-31 15:31 im-scim.so
複製到64位系統中的
/usr/lib32/gtk-2.0/2.10.0/immodules/

檔案可以在這裡下載

http://forum.ubuntu.org.cn/download/file.php?id=40107&sid=7b7683b631aa795fcf2e727186a419bf

二、修改gtk.immodules.32檔案
這個檔案主要用於向程式提示gtk的so路徑,一般在以下路徑可以找到:/etc/gtk-2.0
如果找不到可能是沒有安裝相關的庫,可以運行以下命令:
sudo aptitude install ia32-libs
sudo cp /usr/lib32/gtk-2.0/2.10.0/immodule-files.d/libgtk2.0-0.immodules /etc/gtk-2.0/gtk.immodules.32

在檔案最底部裡面添加im-scim-bridge.so和im-scim.so的路徑:

"/usr/lib32/gtk-2.0/2.10.0/immodules/im-scim.so"
"scim" "SCIM Input Method" "scim" "/usr/share/locale" "ja:ko:zh"

"/usr/lib32/gtk-2.0/2.10.0/immodules/im-scim-bridge.so"
"scim-bridge" "SCIM Bridge Input Method" "" "" ""

三、建立查詢連結檔案gtk-query-immodules-2.0
這個主要是程式啟動時查詢的檔案,說明GTK的路徑。但只是一個連結檔案,
原來的連結為:../lib/libgtk2.0-0/gtk-query-immodules-2.0
即/usr/lib/libgtk2.0-0/gtk-query-immodules-2.0

現在要更新這個連結檔案到我們修改的檔案中
sudo mv /usr/bin/gtk-query-immodules-2.0 ~/
sudo ln -s /etc/gtk-2.0/gtk.immodules.32 /usr/bin/gtk-query-immodules-2.0

到這一步也已經完成了。試一下在終端開啟FF,看還有沒有警告的產生。
關鍵在於提供32位的so檔案,並修改查詢檔案連結到gtk.immodules.32

終於處理了這幾天煩人的問題,一個是FF的Flash外掛程式,一個是切換中文。解決這兩個,對Linux的熟悉又加深了一大步。
另外有個建議:如果你用的是64位的系統,可以直接用Chrome的64位的deb,這樣可以簡單很多,Flash也已經可以使用,而且開啟網頁的速度還是比較快的!
等待外掛程式豐富的一天,我也會好好使用它。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.