如何在64位的Linux中运行32位的应用程序
创始人
2024-04-28 18:00:54
0

大部分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位的库文件也不行。这时候唯一可行的办法就是在根下运行了。

【编辑推荐】

  1. 保障Linux的临时文件安全
  2. Linux置CVS集成cvstrac
  3. Mac和Linux将面临新的漏洞攻击

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
着眼MAC地址,解救无法享受D... 在安装了DHCP服务器的局域网环境中,每一台工作站在上网之前,都要先从DHCP服务器那里享受到地址动...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...