Ubuntu 11.10 (64 ビット) に vPostgres (Postgres 用の Vmware バージョン) の odbc ドライバーをインストールしようとしています。インストーラー (64 ビット) の rpm ファイルをダウンロードし、次のコマンドを使用して rpm をインストールしようとしました。
rpm -ivh Vmware-vPostgres-client.rpm を実行すると、次のエラーが表示されます:
エラー: 依存関係に失敗しました: VMware-vPostgres-client-1.0.1.1145-532311.x86_64 には libc.so.6()(64 ビット) が必要です VMware-vPostgres-client-1.0.1.1145-532311.x86_64 には libc.so.6(GLIBC_2.2.5)(64 ビット) が必要です VMware-vPostgres-client-1.0.1.1145-532311.x86_64 には libc.so.6(GLIBC_2.3)(64 ビット) が必要です VMware-vPostgres-client-1.0.1.1145-532311.x86_64 には libc.so.6(GLIBC_2.3.3)(64 ビット) が必要です VMware-vPostgres-client-1.0.1.1145-532311.x86_64 には libdl.so.2()(64 ビット) が必要です VMware-vPostgres-client-1.0.1.1145-532311.x86_64 には libdl.so.2(GLIBC_2.2.5)(64 ビット) が必要です VMware-vPostgres-client-1.0.1.1145-532311.x86_64 には libpthread.so.0()(64 ビット) が必要です VMware-vPostgres-client-1.0.1.1145-532311.x86_64 には libpthread.so.0(GLIBC_2.2.5)(64 ビット) が必要です VMware-vPostgres-client-1.0.1.1145-532311.x86_64 には libresolv.so.2()(64 ビット) が必要です VMware-vPostgres-client-1.0.1.1145-532311.x86_64 には libresolv.so.2(GLIBC_2.2.5)(64 ビット) が必要です
私が試したことはいくつかあります:
libpthread.so.0 を検索すると、次の結果が返されます。
libpthread.so.0 は、Linux のシステム ライブラリです。 libpthread.so.0 は、Linux のオペレーティングシステムでサポートされています。 libpthread.so.0 は、
他のすべてのファイルについても同様の場所を取得します: libc.so.6 を探します
6. libc.so.6 をロードします。 libc.so.6 は、Linux のオペレーティングシステムでサポートされています。 lib32/libc.so.6 を参照してください。
等々。
以下を使用してシンボリックリンクを作成してみました:
sudo ln -s lib/x86_64-linux-gnu/libc.so.6 64ビット版 sudo ln -s lib/x86_64-linux-gnu/libc.so.6 libc.so.6 は、 sudo ln -s lib/x86_64-linux-gnu/libc.so.6 libc.so.6
しかし、どれも機能しませんでした。このファイルをどこで検索しようとしているのか正確にはわかりません。
ldd Vmware-vPostgres-client.rpmはあまり役に立たず、予想通り「動的実行可能ファイルではありません」と返します。
/etc/ld.so.confファイルにパスを追加してみました
lib/x86_64-linux-gnu/libc.so.6 をインクルードします。
LD_LIBRARY_PATH を指定されたファイルに設定することも試みましたが、効果はありませんでした。
ldd --version は GLIBC 2.13 を表示します
ファイルが正確にどこで検索されるのかを教えていただけますか?
答え1
Ubuntu は Debian パッケージ形式を使用しているため、Deb ベースのディストリビューションに RPM をインストールすることはできません。ツールをインストールすることは可能ですがrpm
、パッケージの依存関係は Deb パッケージの依存関係と統合されず、パッケージの内容も必ずしも機能しない可能性があります。
最善の解決策は、必要なソフトウェアのDebパッケージを見つけることです。次善の策は、自分でDebパッケージに組み込むことです(かなりの作業量になります)。それが不可能な場合は、最後の手段として、エイリアンRPM を Deb に変換します。依存関係を手動で処理する必要があり、パッケージ スクリプトで変更を行う必要がある場合もあります。
答え2
「エイリアン」は私にとっては有効です:
$ sudo apt-get install alien
$ sudo alien VMware-vPostgres-client-1.0.1.1145-532311.x86_64.rpm
vmware-vpostgres-client_1.0.1.1145-532312_amd64.deb generated
$ sudo dpkg -i vmware-vpostgres-client_1.0.1.1145-532312_amd64.deb
...
Unpacking vmware-vpostgres-client (from vmware-vpostgres-client_1.0.1.1145-532312_amd64.deb) ...
Setting up vmware-vpostgres-client (1.0.1.1145-532312) ...
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place