Rpm

rpmパッケージのインストールプロセスの依存関係 'libc.so.6はXXX'の回避策で必要です



Rpm Package Installation Process Dependencelibc



数日投げて、最後にCentOS CanonLBP2900プリンタードライバーを使用します。 Middleはいくつかの問題に遭遇し、主にインストールされたrpmパッケージの依存関係の問題が発生し、丹念に最終的に解決されました。ここで簡単に要約します。

まず、CentOSバージョンは6.6、64を使用します。プリンタードライバーパッケージは2 rpmでインストールされます:cndrvcups-common-2.60-1.x86_64.rpm with cndrvcups-capt-2.60-1.x86_64.rpm



インストールコマンドrpm -ivh cndrvcups-common-2.60-1.x86_64.rpm依存関係エラーが表示されます。エラーコードは次のとおりです。

[root@xxxxx RPM]# rpm -ivh cndrvcups-common-2.60-1.x86_64.rpm error: Failed dependencies: libc.so.6 is needed by cndrvcups-common-2.60-1.x86_64 libc.so.6(GLIBC_2.0) is needed by cndrvcups-common-2.60-1.x86_64 libc.so.6(GLIBC_2.1) is needed by cndrvcups-common-2.60-1.x86_64 libc.so.6(GLIBC_2.1.3) is needed by cndrvcups-common-2.60-1.x86_64 libc.so.6(GLIBC_2.3) is needed by cndrvcups-common-2.60-1.x86_64 libdl.so.2 is needed by cndrvcups-common-2.60-1.x86_64 libdl.so.2(GLIBC_2.0) is needed by cndrvcups-common-2.60-1.x86_64 libdl.so.2(GLIBC_2.1) is needed by cndrvcups-common-2.60-1.x86_64 libm.so.6 is needed by cndrvcups-common-2.60-1.x86_64 libm.so.6(GLIBC_2.0) is needed by cndrvcups-common-2.60-1.x86_64 libpthread.so.0 is needed by cndrvcups-common-2.60-1.x86_64 libpthread.so.0(GLIBC_2.0) is needed by cndrvcups-common-2.60-1.x86_64 libpthread.so.0(GLIBC_2.1) is needed by cndrvcups-common-2.60-1.x86_64 libpthread.so.0(GLIBC_2.3.2) is needed by cndrvcups-common-2.60-1.x86_64 librt.so.1 is needed by cndrvcups-common-2.60-1.x86_64 libstdc++.so.6 is needed by cndrvcups-common-2.60-1.x86_64 libstdc++.so.6(CXXABI_1.3) is needed by cndrvcups-common-2.60-1.x86_64

いくつかをオンラインで検索します。解決策は、不足している依存関係をインストールすることです。しかし、検索の結果、このマシンにいくつかのライブラリがインストールされていることがわかりました。例libc.so.6パッケージ名に対応するライブラリglibc



[root@xxxxx RPM]# yum list glibc* Loaded plugins: fastestmirror, refresh-packagekit, security Loading mirror speeds from cached hostfile * base: mirrors.cug.edu.cn * extras: mirrors.cug.edu.cn * updates: mirrors.skyshe.cn Installed packages glibc.x86_64 2.12-1.149.el6 @anaconda-CentOS-201410241409.x86_64/6.6 glibc-common.x86_64 2.12-1.149.el6 @anaconda-CentOS-201410241409.x86_64/6.6 glibc-devel.x86_64 2.12-1.149.el6 @anaconda-CentOS-201410241409.x86_64/6.6 glibc-headers.x86_64 2.12-1.149.el6 @anaconda-CentOS-201410241409.x86_64/6.6 Installable package glibc.i686 2.12-1.149.el6 base glibc-devel.i686 2.12-1.149.el6 base glibc-static.i686 2.12-1.149.el6 base glibc-static.x86_64 2.12-1.149.el6 base glibc-utils.x86_64 2.12-1.149.el6 base

それで問題は、それがインストールされているのでlibc.so.6なぜライブラリの欠如が示唆されているのですか?検索を続けて検索します。Baiduは基本的に無駄な検索です。Googleは期待することしかできません。最後に、***を取得します。Googleは英語の結果に焦点を合わせて検索を続けることができます。最後に、最後にStack Overflow同様の質問と回答が見つかりました 元のテキストを表示するには、ここをクリックしてください 。ここでの重要な抜粋はほんの数語です:

Red Hat Enterprise Linux 5では、メインアーキテクチャと互換性アーキテクチャの両方でパッケージが利用可能な場合、パッケージの両方のアーキテクチャがデフォルトでインストールされていました。
Red Hat Enterprise Linux 6では、プライマリアーキテクチャのパッケージのみがデフォルトでインストールされます。
64ビットマシンへのバックアップ/アーカイブクライアントおよびAPIのインストール中の問題を回避するには、必ずlibstdc ++およびcompat-libstdc ++をインストールしてください。

from Red Hat Enterprise Linux 6、デフォルトのインストールパッケージはメインインフラストラクチャのみを必要とし、パッケージ互換アーキテクチャ、つまり64ビットシステムをインストールせずに、デフォルトのパッケージは64ビットのみをインストールします。この問題を回避するために、64ビットシステムは64ビットおよび32ビットパケット互換パッケージをインストールします。CentOSそしてfrom Red Hat Enterprise Linux 6私が言っていない関係なので、この答えをもっと感じます信頼性が高く、すぐに試してみてください。



[root@xxxxx RPM]# yum install glibc.i686 Loaded plugins: fastestmirror, refresh-packagekit, security Setting the installation process ...... It has been installed: glibc.i686 0:2.12-1.149.el6 It is selected as a dependency: nss-softokn-freebl.i686 0:3.14.3-18.el6_6 Be upgraded as a dependency: nss-softokn-freebl.x86_64 0:3.14.3-18.el6_6 Finished! [root@xxxxx RPM]# rpm -ivh cndrvcups-common-2.60-1.x86_64.rpm error: Failed dependencies: libstdc++.so.6 is needed by cndrvcups-common-2.60-1.x86_64 libstdc++.so.6(CXXABI_1.3) is needed by cndrvcups-common-2.60-1.x86_64

結果は満足のいくものであり、彼女はもはやプロンプトを表示しませんlibc.so.6 A。引き続き対処libstdc++.so.6

[root@xxxxx RPM]# yum list libstdc++* Loaded plugins: fastestmirror, refresh-packagekit, security Loading mirror speeds from cached hostfile * base: ftp.sjtu.edu.cn * extras: mirrors.163.com * updates: ftp.sjtu.edu.cn Installed packages libstdc++.x86_64 4.4.7-11.el6 @anaconda-CentOS-201410241409.x86_64/6.6 Installable package libstdc++.i686 4.4.7-11.el6 base libstdc++-devel.i686 4.4.7-11.el6 base libstdc++-devel.x86_64 4.4.7-11.el6 base libstdc++-docs.x86_64 4.4.7-11.el6 base [root@xxxxx RPM]# yum install libstdc++.i686 Loaded plugins: fastestmirror, refresh-packagekit, security Setting the installation process ...... It has been installed: libstdc++.i686 0:4.4.7-11.el6 It is selected as a dependency: libgcc.i686 0:4.4.7-11.el6 Finished! [root@xxxxx RPM]# rpm -ivh cndrvcups-common-2.60-1.x86_64.rpm Preparing... ########################################### [100%] 1:cndrvcups-common ########################################### [100%]

この時点で、最終的に依存の問題を解決しました。cndrvcups-common-2.60-1.x86_64.rpm最終的にインストールに成功しました。同じように、スムーズなcndrvcups-capt-2.60-1.x86_64.rpmインストールの成功。

総括する: rpmパッケージをインストールするときに、同様のlibc.so.6 is needed by XXX依存関係の問題がある場合は、まず、このマシンに必要な依存関係がインストールされていて問題が解決しない場合に、依存ライブラリのインストールに対応するマシンを確認してから、適切な互換性パックをインストールしてみてください。見て、問題は解決できるはずです!