
一些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
如果一个程序没有启动脚本,你可以像上面那样设置下环境变量。
工具:Ubuntu
步骤:
下面的命令可以在 Ubuntu/Debian 13.10 或更高的发行版上运行。
第一步: 确认你有一个64位架构的内核
可以打开终端然后输入:dpkg --print-architecture
将会看到像下面这样的内容:
amd64
这说明着已经拥有了64位架构内核。
第二步: 确认打开了多架构支持功能
(多架构支持可以在有64位库的情况下使用32位库。)
输入:dpkg --print-foreign-architectures
输出是:i386
如果还没有多架构支持需要打开它。
另一种第二步: 打开多架构支持。
输入:
sudo dpkg --add-architecture i386
sudo apt -get update
然后就会开始下载更新然后运行。
之后需要输入:sudo apt-get dist-upgrade
它会检查已经拥有的库文件是否有更新的版本。
若果然有的话,它会问是否需要更新(y/n)。
如此这般,就已经成功地为你的64位系统安装了32位支持了。
但是,有时候我们会为网速慢,安装源不好而烦恼,所以我们可能会将一些常用软件包的deb文件保存在本地以备不时之需。当然了使用dpkg也可以直接来安装保存在本地的deb软件包,问题是它并不能处理软件包之间的依赖
第一步:所你所有的deb文件放在同一个目录内,如:
# mkdir /var/debs
第二步:使用dpkg-scanpackages 命令生成APT可以使用的软件包索引文件
/var# dpkg-scanpackages debs /dev/null | gzip debs/Packages.gz
注:/dev/null位置的参数是指定一个文件,文件名不限,该文件的作用是用来重写覆盖deb软件包中控制文件的某些定义,它的第一行的格式,一行对应一个软件包:
package priority section
package指定你所要修改的软件包
priority 有low,medium,high三个值
section 用来指定软件包属于哪个section
如果不需要对deb软件包做任何修改你就可以像例子中那样直接指定一个/dev/null文件。
第三步:在你的sources.list中添加一行
deb file:/var debs/
这样你就可以使用apt-get命令来安装这些软件包了,命令格式没有任何差异,apt-get会为我们处理软件包之间的依赖关系,不过要注意,在修改sources.list之后一定要执行一下apt-get update命令。
让 apt-get使用本地的源代码进行安装也是一样的,不过需要注意下列几点:
1、第一个软件包的orig.tar.gz(源程序文件), .dsc(debian控制文件) and .diff.gz(描述在debian能使用该程序之前需要进行的修改部分)文件必须在同一目录下。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)