我如何将存储库添加到ia32-apt-get?

我需要安装一些仅在64位(amd64)Ubuntu上的i386体系结构中可用的第三方二进制包。 如何添加新的32位存储库,以便ia32-apt-get将自动安装和转换i386-only二进制包及其依赖项?

不幸的是,你不能在AMD64机器上安装i386软件包。 dpkg只是不会让你。 你可以做一些事情来解决这个问题。 可能最简单的方法是使用debootstrap来设置i386 chroot:

  #/ usr / sbin / debootstrap --arch i386 jaunty / mnt / ubuntu http://archive.ubuntu.com/ubuntu 

然后你可以chroot进入/ mnt / ubuntu并安装你的软件包。

你运行ia32-apt-get update吗? ia32-apt-get暂时将apt-get软件包列表目录设置为/etc/apt/foreign/而不是默认的/etc/apt 。 安装后,默认的/etc/apt/sources.list被复制到/etc/apt/foreign 。 因此,要获取要安装的软件包列表,您至less需要运行一次该更新。 如果你想扩展sources.list的repo,使其超出默认的native sources.list,那么你需要编辑这个国外的sources.list。

你不能。 为什么这些软件包不在amd64存储库中,这很可能是一个非常具体的原因。 如果你没有看到原因,那么你可以尝试自己build造它们。

进入包页面,下载源代码并自己构build。

获取需要的文件apt-get install devscripts build-essential fakeroot dpkg-dev

比方说你想build立BC。 find源码包: http : //packages.ubuntu.com/jaunty/bc链接到右边的dsc文件。 然后运行:dget http://archive.ubuntu.com/ubuntu/pool/main/b/bc/bc_1.06.94-3ubuntu1.dsc cd bc-1.06.94 / dpkg-buildpackage -rfakeroot -b

你可以用dpkg安装新鲜的deb文件。