web-dev-qa-db-ja.com

64ビットインストールで32ビットパッケージをapt-getするにはどうすればよいですか?

ゲームを機能させようとしていました。しかし、ゲームバイナリが32ビットであったときにAMD64でLucid Lynxを実行しています(64ビットバージョンは利用できず、再コンパイルする気分もありませんでした)。実行するlibfsml-windows1.5がなく、apt-gettingに失敗しました。そのため、i386パッケージを手動でダウンロードし、強制的にインストールする必要があります。 (いいえ、ia32libsの一部ではありません。)

少なくとも64ビットのインストールでx86パッケージを自動的にダウンロードする方法があるかどうか疑問に思っています。 apt-get -o apt::architecture=i386は機能しませんでした。 (アーキテクチャモードを切り替えると、パッケージが見つからないか、既存のパッケージの依存関係が欠落しているとみなされます。)

それを自動化する別のツールはありますか?おそらくi386パッケージをダウンロードし、含まれるライブラリを/ usr/lib32 /に暗黙的に再配置するものですか?

32
mario

Ubuntu 11.10以降のソリューション

Ubuntu 11.10以降、getlibsまたはその他の回避策を使用する必要はなくなりました。 64ビットシステム上のパッケージシステムは、64ビットライブラリと並行して32ビットライブラリを管理できるようになりました。すべての依存関係を備えた完全なアプリケーションを今すぐ簡単にインストールすることもできます!

インストールするパッケージの名前に:i386を追加するだけです。

たとえば、32ビットバージョンのJava 7が必要で、次のコマンドを実行するだけで(依存関係とともに)インストールできます。

Sudo apt-get install openjdk-7-jdk:i386
35
Chriki

はい、chroot環境を用意するのが一番です。以前のリリースを既存のUbuntuと並べて使用することもできます。

簡単です。

Sudo apt-get install debootstrap schroot

/etc/schroot/schroot.confを編集して、新しいschroot設定を追加します。

[lucid32]
type=directory
description=Ubuntu Lucid 32bit
directory=/chroot/lucid32
users=your-user
root-groups=root
personality=linux32

次に、chroot環境をインストールします。

Sudo debootstrap --variant=buildd --Arch i386 lucid /chroot/lucid32 http://nl.archive.ubuntu.com/ubuntu

次に、次を使用してchrootを入力します。

schroot -c lucid32

または、ルートタスクの場合:apt-getタスクの実行:

Sudo schroot -c lucid32
14
Paulo Lopes

愚かな私。それは確かに解決された問題です。

getlibs

名前が示すように、アプリケーションではなくライブラリのみをインストールできます。ただし、32ビットライブラリをx86-64システムにボルトで固定する場合は非常にうまく機能します。/usr/lib32へのダウンロードとインストールを自動化します(内部でパス置換を行うと仮定しましょう)。

ppa:jcollins/jaminppa
https://launchpad.net/~jcollins/+archive/jaminppa/+packages

いくつかのドキュメント(getlibsには現在のホームページがないようです):
http://ubuntuforums.org/showthread.php?t=47479
https://help.ubuntu.com/community/32bit_and_64bit
http://www.dedoimedo.com/computers/ubuntu-utils.html
http://wiki.ubuntuusers.de/getlibs (ドイツ語)

8
mario

64ビットシステムに32ビットライブラリを強制的にインストールすると、システムが破損します。 32ビットのchrootをセットアップする必要があります。 http://ubuntuforums.org/showthread.php?t=24575 を参照してください。

2
psusi