Linux Mint 11 x64で32ビットのバイナリ互換性を有効にする方法


8

最近x64 Linux Mint 11をインストールしました。基本的にはUbuntu Nattyです。インストール後、Ubuntuシステムで実行されていた32ビットアプリケーションがMint 11システムによって拒否されることがわかりました。「ファイル」ユーティリティを使用してバイナリをチェックすると、32ビットのエルフとして正しく識別されますが、アプリケーションを起動できません。

私はそれをbashとos.system a la pythonから始めて、役に立たなかったので、32ビットのバイナリ互換モードと何か関係があるに違いないと思っていますが、そのサブシステムとそれを有効にする方法についての私の知識制限されていますが、誰でも支援できますか?

ありがとう


質問に対して+1 thx。ナティからミントにもシフトしました!
Alain Pannetier、2011

回答:


5

ia32-libsをインストールし、アプリケーションファイルが実行可能としてマークされていることを確認してください。:)

遅延編集:

libはia32-libsの代わりにia32-libs-multiarchと呼ばれる可能性があります。
apt-get install ia32-libs-multiarch


すばらしい、それは完璧に機能しました、ありがとう!。なぜそれが機能したのか正確には少しわかりませんが、以前にライブラリが見つからなかったとしても、lddは少なくとも必要な共有オブジェクトファイルをリストしていました。ia32-libsをインストールする前に、lddは単にバイナリが動的にリンクされた実行可能ファイルではなかったと言いますが、32ビットアプリを実行するためにia32-libsが使用する他の秘密のソースはありますか?
Gearoidマーフィー、2011

私は正直なところ確かではありませんが、それが私にとってうまくいったものです!:)(ps必要に応じて答えをマークしてください!):)
Ruairi Fullam

興味深いことに、私はia32-libsを削除しましたが、実行可能ファイルはまだ機能しています(静的にリンクされています)。「lsmod」からの出力を詳しく調べると、「binfmt_misc」というモジュールがあることがわかります。これは私が参照していたものです。これが、32ビット版やWindowsのCOFF exeなどの代替バイナリ形式をサポートするための主要な要件であることを確認してください。
Gearoidマーフィー、2011

2

MINTについては何も知りませんが、Debianの経験があります。32ビットバイナリを実行するには、ほとんどの場合、64ビット環境で32ビットバイナリをサポートするライブラリが必要です。試す

apt-get install ia32-libs

システムにapt-getがある場合...(またはaptitudeまたはMINTに付属しているものを試してください)

lddを使用して、必要なライブラリを確認できます。

lofi:~# ldd /bin/ping
linux-vdso.so.1 =>  (0x00007ffff7dff000)
libc.so.6 => /lib/libc.so.6 (0x00007fd872ed1000)
/lib64/ld-linux-x86-64.so.2 (0x00007fd87323c000)

不足しているライブラリがある場合は、lddが通知します。


ia32-libsをインストールする前に32ビットバイナリでlddを使用すると、バイナリが動的にリンクされた実行可能ファイルではないことを示すエラーが返されました。これは、32ビットのバイナリ互換性を有効にするために構成する必要があるものでした。
Gearoidマーフィー、2011
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.