Rpm
OracleLinux 8.6 中“glibc.i686”的“glibc-common”依賴是如何實現的?
OracleLinux 8.6 包含 32 位軟體包
glibc-2.28-189.1.0.1.el8.i686.rpm
。這個包需要glibc-common
的正是那個版本:$ rpm -qpv --requires glibc-2.28-189.1.0.1.el8.i686.rpm ... manual: glibc-common = 2.28-189.1.0.1.el8 ...
但是,儲存庫不包含
glibc-common-2.28-189.1.0.1.el8.i686.rpm
,僅包含glibc-common-2.28-189.1.0.1.el8.x86_64.rpm
.64位版本能否
glibc-common
滿足32位glibc
包的依賴需求?如果是這樣,為什麼不考慮它noarch
,以及 RPM 依賴解析器如何確定它必須引入 RPM 包的 64 位變體?或者,是否有提供此版本的儲存庫
glibc-common.i686
?我知道Koji儲存glibc-common-2.28-189.el8.i686.rpm
庫,但它只提供.2.28-189.1.0.1.el8
是的,64位版本
glibc-common
滿足32位glibc
依賴。然而,它不能是一個noarch
包,因為它包含“GNU libc 庫的通用二進製文件,以及國家語言(區域設置)支持”——這意味著它的內容因建構它的每個架構而異。RHEL 8 及其衍生
glibc.i686
版本僅支持 64 位平台,因此您可以安裝的唯一方案是作為glibc.x86_64
. 如果相同架構的依賴不可用,解析器將考慮“主架構”包;在這種特定情況下,無論如何,依賴關係已經被解決,不會再安裝任何東西了。