Ubuntu 64bitに32bit用のdebパッケージをインストールするには その2

この記事「Ubuntu 64bitに32bit用のdebパッケージをインストールするには - notes plastiques」でUbuntu64bitに32bit用の.debをインストールする方法を紹介しましたが、これでやるとaptitude searchに引っかからなかったりして不具合があるので別の方法を考えました。

まず、debファイルの中にあるcontrol.tar.gzというアーカイブを展開します。

ar p $debfile control.tar.gz | tar zxv --directory=$datadir

$datadirは展開したいディレクトリを指定してください。

次に展開されたディレクトリの中のcontrolというファイルを編集します。
"Architecture: "の項目がi386になっているとおもうので、amd64に書き換えます。

"Depends: "の項目にia32-libsを加えます。

  • Depends: ia32-libs, hoge, fuga


そしたら、control.tar.gzを作り直します。

cd $datadir
ls | tar zcvf control.tar.gz -T -

これでできた新しいcontrol.tar.gzで入れ替えてあげましょう。

ar r $debfile control.tar.gz

これで出来上がり。たぶん。

インストールは

sudo dpkg -i $debfile

で。aptitude searchには引っかかるようになりました。


これで、依存関係でインストールできなかったadobereader-jpn-ipamonafontがインストールできる!adobereader-jpnに依存していてインストールできなかったのです…


追記: こんなスクリプトを書いてみた。ちゃんと動くかな…

注) 本記事によって生じたいかなる損害について著作者は責任を負いません。