错误:软件包体系结构(amd64)与系统(i386)不匹配

错误:软件包体系结构(amd64)与系统(i386)不匹配

我正在尝试安装 Ubuntu 12.10,顺便说一句,我的无线网不工作。所以,我试图手动修复这个问题。我已经安装了 64 位 Ubuntu。问题是我无法安装任何软件包,因为当我安装时会出错。例如,如果我运行命令

sudo dpkg -i wireless-bcm43142-dkms_6.20.55.19-1_amd64.deb

我收到此错误:

dpkg: error processing wireless-bcm43142-dkms_6.20.55.19-1_amd64.deb (--install: package architecture (amd64) does not match system (i386)

如果我尝试安装任何其他软件包,也会收到此错误。我的系统是戴尔 3421,配有 i5 处理器,所以我不知道为什么 Ubuntu 认为我有一个 i386 系统。如果我运行命令,我uname会得到以下结果:

uname -i 
i686

uname -p
i686

uname-m
i686

答案1

答案隐藏在以下文档中dpkg

dpkg --print-architecture

将向您展示dpkg愿意安装软件包的体系结构。

如果架构amd64未列出,即使其他一切正常,amd 包也会被拒绝。现在您可以尝试使用以下命令添加它:

dpkg --add-architecture amd64

并使用以下命令显示它:

dpkg --print-foreign-architectures

在明确安装为 amd64 的系统上,我成功使用 dpkg 尝试安装该软件包。当然,可能会检测到其他问题,例如依赖项失败。

答案2

的不同变体uname指示了您已安装的内核。

这反过来会给你安装的 Ubuntu 版本提供线索,以及错误原因的解释

错误:软件包体系结构(amd64)与系统(i386)不匹配

在 64 位安装中,你会看到类似以下内容:

Linux emachine 3.5.0-26-generic #42~precise1-Ubuntu SMP 2013 年 3 月 11 日星期一 22:17:58 UTC x86_64 x86_64 x86_64 GNU/Linux

关键部分是x86_64指示 64 位安装。

您的输出 -i686表明您已经安装了 32 位版本的 Ubuntu。

最后有一些有用的链接 - 足以说明 - 您无法在 32 位系统上安装 64 位 Debian 软件包。这就是您的错误消息基本上告知您的内容。

您将需要该软件包的 32 位变体 - 它通常以名称结尾i386.deb


有用的链接:

相关内容