私はこれが正しいことを確認してください-私は電話します
ldd /path/to/executable
そして、「動的実行可能ファイルではない」を返します。これは、他のライブラリに依存しないことを意味しますか?もしそうなら、依存関係を心配せずに別のUbuntuボックスに転送できるということですか?
正しいですが、考慮すべきことがあります。
ldd
マンページから:
lddはa.out共有ライブラリでは機能しません。
lddは、コンパイラのリリースにlddサポートが追加される前に構築された非常に古いa.outプログラムでは動作しません。これらのプログラムのいずれかでlddを使用すると、プログラムはargc = 0で実行しようとし、結果は予測不能になります。
@Calmariusは正しいです。これは、基本的な32ビットライブラリさえなく、32ビットexeを検討した場合に発生します。
システムをアップグレードしようとしています(Ubuntu 16.04の新規インストール、12.04から)。ia32-libs
(使用できなくなった)を必要とする古いpropitiatory 32ビットサービスavserver
をインストールする必要があります。これは、dpkg
とapt-get
の両方が不満であることを意味し(私が何をするにしても、apt-get -f install
を促し、それを実行すると、サービスパッケージをアンインストールすることを要求します)開始しません。
これが32ビットライブラリの欠落につながることを証明するために、古いシステム(Ubuntu 12.04、ia32-libs
および32ビットライブラリ)を/sda2
にマウントしました。 /opt
(32ビットバイナリを含む)が/sda2/opt
にマウントされていることを確認すると、chroot /sda2
およびldd
を実行して、意図したとおりに実行できます。
これを修正するために、:i386(Arch)を使用してすべての依存ライブラリパッケージを手動でインストールすることができました。ただし、依存関係を把握しようとするのではなく、wineをインストールしました(ほとんどが32ビットであるため、基本的なライブラリをインストールし、実際には必要のない負荷を追加しますが、それで問題ありません)。
dpkg
とapt-get
を修正するために、/var/lib/dpkg/status
を編集し、サービスのパッケージを見つけて、ia32-libs
を削除しました。 dpkg
とapt-get
は満足しています
ldd
は喜んで報告します:-root@withnail:/opt/<service path># ldd avserver linux-gate.so.1 => (0xf77a6000) libdl.so.2 => /lib/i386-linux-gnu/libdl.so.2 (0xf778f000) libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xf7772000) libuuid.so.1 => /lib/i386-linux-gnu/libuuid.so.1 (0xf776b000) libresolv.so.2 => /lib/i386-linux-gnu/libresolv.so.2 (0xf7752000) libcrypt.so.1 => /lib/i386-linux-gnu/libcrypt.so.1 (0xf7720000) libktssl.so.1.0.0 => /opt/<service path>/libktssl.so.1.0.0 (0xf76cb000) libktcrypto.so.1.0.0 => /opt/<service path>/libktcrypto.so.1.0.0 (0xf756b000) libktz.so.1 => /opt/<service path>/libktz.so.1 (0xf7558000) librt.so.1 => /lib/i386-linux-gnu/librt.so.1 (0xf754f000) libstdc++.so.6 => /usr/lib/i386-linux-gnu/libstdc++.so.6 (0xf73d8000) libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xf7383000) libgcc_s.so.1 => /lib/i386-linux-gnu/libgcc_s.so.1 (0xf7366000) libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xf71af000) /lib/ld-linux.so.2 (0x565b1000)