Ubuntu使用dpkg查看与修改architecture的用法

dpkg是Debian的包管理器,因为Ubuntu是Debian的变体,在Ubuntu下也有这个工具。

两个常用的命令是:

dpkg -i package-file和dpkg -r package
分别表示安装和移除软件包。当然使用:dpkg -P package还可以做到移除软件包时,清除掉配置文件。
要查询已安装的软件包的状态,可以使用:dpkg-query -s packagecpu-name

下面谈一下我遇到的一个问题。我在arm64机器上安装amd64类型的包,弹出的错误为:

package architecture (amd64) does not match system (arm64)

装不上,有人给出解决办法:

sudo dpkg --add-architecture amd64

这样做以后就能装上了。个人认为,如果这样做能解决问题,当然很好;如果不能,还得寻找其他的解决途径。

这里说一下architecture的问题,一个编译好的软件是与操作系统类型,cpu架构都有关的。这个architecture就是cpu的体系结构。

命令一:

sudo dpkg  --print-architecture

该命令用于显示本机的architecture,我在不同的机器上得到的结果有:arm64或amd64

命令二:

sudo dpkg --add-architecture architecture

这就是前面提到的那个问题的解决办法。

命令三:

sudo dpkg --print-foreign-architectures

比如你用命令二,增加了一个新的architecture,用这条命令就能打印出来。

命令四:

sudo dpkg --remove-architecture architecture

这和命令二相反,把之前增加的architecture去除。

原文地址:https://www.cnblogs.com/gaohongyu/p/14137312.html