回答:
一部のライブラリでは、32ビットライブラリと64ビットライブラリの両方を64ビットシステムにインストールすることができます。これはia32-libs
、Ubuntu 10.04以前のパッケージで利用できます。のファイルリストにia32-libs
よると、ファイルはlibfuse.so.2
含まれていません。つまり、一度に両方のアーキテクチャをインストールすることはできません。
Ubuntu 11.10 Oneiric以降、「マルチアーチ」と呼ばれる異なるアーキテクチャのパッケージを同時にインストールできるようになりました。残念ながら、Oneiric のファイルリストをlibfuse2
信じているかもしれませんが、このパッケージはまだ移行されていません。これは、パッケージの依存関係から判断できます。パッケージがmultiarch-support
(libdrm2のように)依存している場合は、マルチアーキテクチャサポートがサポートされています。ただし、これは、パッケージを複数のアーキテクチャーに同時にインストールできることを保証するものではありません。
パッケージのmulti-arch機能についてローカルキャッシュをクエリするにはlibc6
、次のように実行します。
apt-cache show libc6 | grep ^Multi-Arch:
このコマンドの出力はMulti-Arch: same
です。つまり、32ビットバージョンと64ビットバージョンの両方のパッケージを一度にインストールできます。出力がない場合、パッケージはマルチアーチサポートの準備ができていません。他の可能な値はforeign
(同時インストールはできませんが、他のアーキテクチャの依存関係を満たすために使用できます)およびallowed
(iirc、一度にインストールできるパッケージは1つだけですが、パッケージは他の依存関係を満たすために使用できますパッケージ)
以下を使用して、64ビットシステムに32ビットパッケージをインストールできるはずです。
sudo apt-get install packagename:i386
32ビットのヒューズライブラリはに付属しia32-libs
ていないため、自分でビルドする以外に方法はありません。
fuseのビルド依存関係をインストールし、ソースコードを取得します。
sudo apt-get install ia32-libs libc6-i386
sudo apt-get build-dep fuse
apt-get source fuse
ソースツリーを設定し、fuseをビルドします(必要に応じてディレクトリ名を調整します):
cd fuse-2.8.4
CFLAGS=-m32 ./configure --host=i386-linux-gnu
make -j 50
32ビットのヒューズライブラリをインストールします(それに応じてバージョンを調整します)。
sudo ln -s libfuse.so.2.8.4 /usr/local/lib/libfuse.so.2
sudo install -m644 lib/.libs/libfuse.so.2.8.4 /usr/local/lib/
リンカキャッシュを更新します。
sudo ldconfig
(オプション)ソースファイルを削除します。
cd ..
rm -r fuse-2.8.4
はいあります。ia32をインストールします。これが完了すると、32ビットベースのプログラムを64ビットプラットフォームにインストールできるようになります。
ia32-libs
すべての32ビットライブラリが含まれているわけではありません。