web-dev-qa-db-ja.com

AMD64マシン用のi386 debパッケージ

アプリケーションをビルドしていて、DEBパッケージをビルドしたいのですが、問題があります...

DEBパッケージを32ビットマシンと64ビットマシンの両方にインストールできるようにしたいのですが。次に、両方のアーキテクチャをサポートする32ビットパッケージをビルドしますが、依存関係に問題があります。32ビットシステムがパッケージをインストールすると正常に動作しますが、64ビットシステムがパッケージをインストールすると、依存関係(共有ライブラリ)がインストールされているものは32ビットのものでなければなりません(64ビットのリポジトリで利用可能です)。

どうすればそれを達成できますか?

1
eagleoneraptor

ここに簡単な答えがあります: https://help.ubuntu.com/community/32bit_and_64bit#How_to_Make_32-bit_Applications_Work_on_a_64-bit_Operating_System

インストールia32-libsは確かに最速のソリューションですが、状況によっては十分ではない場合があります。

2

Multiarchでは、これは簡単です。 i386 debをビルドするだけです。 AMD64マシンでは(すべての依存関係がUbuntuでマルチアーチ型である場合)、それらの32ビットバージョンがインストールされます。

1
tumbleweed

64ビットのインストールでは、i386リポジトリのaptエントリが必要です。この場合、依存関係にはpackagenameではなくpackagename:i386を使用します。この例はwineで、すべてのWindowsアプリを実行するには32ビットと64ビットのライブラリが必要です。

0
Relish