アプリケーションをビルドしていて、DEBパッケージをビルドしたいのですが、問題があります...
DEBパッケージを32ビットマシンと64ビットマシンの両方にインストールできるようにしたいのですが。次に、両方のアーキテクチャをサポートする32ビットパッケージをビルドしますが、依存関係に問題があります。32ビットシステムがパッケージをインストールすると正常に動作しますが、64ビットシステムがパッケージをインストールすると、依存関係(共有ライブラリ)がインストールされているものは32ビットのものでなければなりません(64ビットのリポジトリで利用可能です)。
どうすればそれを達成できますか?
ここに簡単な答えがあります: https://help.ubuntu.com/community/32bit_and_64bit#How_to_Make_32-bit_Applications_Work_on_a_64-bit_Operating_System
インストールia32-libs
は確かに最速のソリューションですが、状況によっては十分ではない場合があります。
Multiarchでは、これは簡単です。 i386 debをビルドするだけです。 AMD64マシンでは(すべての依存関係がUbuntuでマルチアーチ型である場合)、それらの32ビットバージョンがインストールされます。
64ビットのインストールでは、i386リポジトリのaptエントリが必要です。この場合、依存関係にはpackagename
ではなくpackagename:i386
を使用します。この例はwineで、すべてのWindowsアプリを実行するには32ビットと64ビットのライブラリが必要です。