rpm -q --providesがさまざまなバージョンを表示するのはなぜですか?

rpm -q --providesがさまざまなバージョンを表示するのはなぜですか?

Fedora 31で以下を実行すると、rpm -q --provides glibc何よりも次のようになります。

libc.so.6(GCC_3.0)   
libc.so.6(GLIBC_2.0) 
libc.so.6(GLIBC_2.1) 
libc.so.6(GLIBC_2.1.1)
libc.so.6(GLIBC_2.1.2)
libc.so.6(GLIBC_2.1.3)
libc.so.6(GLIBC_2.10)
libc.so.6(GLIBC_2.11)
libc.so.6(GLIBC_2.12)
libc.so.6(GLIBC_2.13)
libc.so.6(GLIBC_2.14)
libc.so.6(GLIBC_2.15)
libc.so.6(GLIBC_2.16)
libc.so.6(GLIBC_2.17)     
libc.so.6(GLIBC_2.18)     
libc.so.6(GLIBC_2.2)        
libc.so.6(GLIBC_2.2.1)      
libc.so.6(GLIBC_2.2.2)     
libc.so.6(GLIBC_2.2.3)     
libc.so.6(GLIBC_2.2.4)     
libc.so.6(GLIBC_2.2.6)    
libc.so.6(GLIBC_2.22)       
libc.so.6(GLIBC_2.23)       
libc.so.6(GLIBC_2.24)      
libc.so.6(GLIBC_2.25)       
libc.so.6(GLIBC_2.26)       
libc.so.6(GLIBC_2.27)       
libc.so.6(GLIBC_2.28)      
libc.so.6(GLIBC_2.29)     
libc.so.6(GLIBC_2.3)
libc.so.6(GLIBC_2.3.2)   
libc.so.6(GLIBC_2.3.3)   
libc.so.6(GLIBC_2.3.4)     
libc.so.6(GLIBC_2.30)    
libc.so.6(GLIBC_2.4)
libc.so.6(GLIBC_2.5) 
libc.so.6(GLIBC_2.6) 
libc.so.6(GLIBC_2.7)   
libc.so.6(GLIBC_2.8) 
libc.so.6(GLIBC_2.9) 

この出力は混乱しています。これを実行すると、dnf info glibcglibcのバージョンは2.30です。 glibcバージョンが2.30の場合、どのように多くのglibcバージョンを提供できますか?彼らはどこから来たの?これは、古いバージョンのglibcが必要なパッケージをインストールしても、そのパッケージで十分であることを意味しますか?

ベストアンサー1

以下は、表示されているrpm -q --providesパッケージのライブラリによって提供されるバージョンシンボルのリストです。libc6複数のバージョンシンボルが含まれる理由は、以前のバージョンとの互換性を維持するために、以前のバージョンと互換性のない方法で変更された機能の複数の実装を提供するためです。バラよりldd出力に複数のGLIBCバージョンがあることはどういう意味ですか?もっと学ぶ。

これは、古いバージョンのglibcが必要なパッケージをインストールしても、そのパッケージで十分であることを意味しますか?

いいですね。

おすすめ記事