RHELサーバーにインストールするRPMセットを構築したソフトウェアプロジェクトを継承しました。サーバーにパッケージをインストールしようとすると、パッケージにlibc.so.6が必要であるという「Depsolveを使用したトランザクションの確認」エラーが表示されます。 glibc.i686をインストールするとエラーが消えることがわかりました。
ここでの問題は、このパッケージがx86_64アーキテクチャに適している必要があり、32ビットライブラリに依存してはいけないということです。エラーを引き起こす原因を見つける方法はありますか?これまでに確認したパッケージのすべてのバイナリはx86_64用にビルドされました。
答え1
最後に、RPMを抽出し、1行のコードを使用して問題になるバイナリを見つけました。
find . -print0 | xargs -0 file | grep 'ELF 32'
ディレクトリ内のすべての32ビットバイナリが一覧表示されます。