我正在尝试将系统上的某些软件包升级到 64 位。如何判断某个软件包是为 32 位还是 64 位构建的?
软件包名称后面有一个 x86,这通常表示它是 32 位的,但我认为这不是确定的。即。我知道我有一些 64 位的软件包,但带有 x86 后缀。我如何确定它的平台类型?
谢谢
答案1
对于通用的 32 位 Intel 兼容处理器,该软件包应该是 x86 的,或者如果它是针对该处理器级别编译的,有时会有 i386、i586、i686(例如,针对 686 编译意味着它可能使用一些在真正的 80386 上会失败的操作码)。
如果它有 x86_64 那么它是为 64 位、AMD64 或 EM64T 编译的,无论您想如何称呼它。
如果您认为软件包名称不准确,您可以使用软件包管理器工具查询软件包(您不必说明您使用的是哪个软件包管理器)。您还可以解压软件包并file
在可执行文件上使用以查看它们的位大小。例如,RPM 是带有元数据的特殊 cpio 文件;您可以使用 rpm2cpio 和 cpio 的混合来解压它们。