如何在64位的Linux中運行32位的應用程序 .

大部分Linux發行套件都有針對x86_64處理器的版本。比較典型的x86_64的處理器有ADM Athlon II和英特爾Xeon。因爲這些Linux發行套件都有自己專用的軟件源,這些軟件源會爲提供所有它所支持的應用軟件的二進制包。如果你滿足於Linux的安裝方式,你可能不會需要運行32位的程序。

    一些Linux商業軟件,尤其是遊戲,只提供32的版本。因爲某些特殊的理由,你可能需要配置你的電腦來運行32位的軟件。

    安裝32位的支持庫

    因爲x86_64處理器是爲x86技術涉及,所以它也是支持32位程序的。在Linux裏,你所需要做的就是爲這些軟件安裝必要的軟件庫。幸運的是,大部分Linux發行版本已經將這些打包好了。比方在Ubuntu裏,這個包就叫做ia32-libs。爲了安裝它,你可以打開一個終端,然後輸入下面的內容:

    sudo apt-get install ia32-libs

    在Kubuntu中,你也可以通過Synaptic和Kpackagekit在圖形界面下安裝。一旦安裝了之後,像遊戲之類的軟件就不再需要更多的配置。

    圖形問題

    當你在一個64位的環境中運行32位的軟件時,Ubuntu仍然會去尋找默認的GTK引擎。這樣導致一個wrong ELF class的報錯。這種情況在你運行某些特定的軟件的時候特別惱人,比方說Chrome,一款新的谷歌瀏覽器開源版本。Ubuntu確實已經將32位版本的GTK引擎安裝在了 /usr/lib32/gtk-2.0,但是我所使用的GTK項目並沒有在這個位置找到。快速的解決方法如下:

    1、爲你現在用的主題找到32位包。比方說我,我查找了ubuntu packages

    2、下載包,然後將包解壓縮

    3、爲主題找到庫文件

    4、將庫拷貝到lib32路徑:

    sudo cp ~/download-directory/usr/lib/gtk-2.0/2.10.0/engines/libqtcurve.so /usr/lib32/gtk-2.0/2.10.0/engines/

    比方說Chrome,它的需要可以設置在啓動腳本里: /user/lib32/gtk-2.0如果程序的啓動腳本在你運行的時候沒有去看,而是去尋找 /user.lib/gtk-2.0,你可能需要修改啓動腳本或者在終端裏輸出並設置一個環境變量:

    export GTK_PATH=/usr/lib32/gtk-2.0 command-to-start-app

    如果一個程序沒有啓動腳本,你可以像上面那樣設置下環境變量。

    其他的錯誤

    我已經發現了像Boxee這樣的應用程序,不能很好地在任何情況運行在64位系統下,即使在安裝了32位的庫文件也不行。這時候唯一可行的辦法就是在根下運行了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章