2008/11/29(土)dpkgがaptitude upgradeできない
2008/11/29 20:03
package uses Breaks; not supported in this dpkgと出て、パッケージのインストールが出来ない問題@ubuntu。
メッセージを見る限り、dpkgのアップグレードをすれば解決しそうだが、dpkgのインストールでも同様のメッセージが出る。
エラーの原因は以下に詳しい。
Nabble - Bug#462165: dpkg: Upgrade from 1.13.23-1.14.5 to 1.14.16 onwards is broken
内容の意訳をすると、
- "Breaks"ヘッダはdpkg1.14.6からサポートされました。
- それ未満のVer.のdpkgでは"Breaks"ヘッダを持つパッケージをインストールできません。
- そのためdpkgのVerUPの必要がありますが、最新のdpkg1.14.16パッケージにも"Breaks"ヘッダは使われています。
- 従って、1.14.6未満のdpkgのVerUpには「卵が先か鶏が先か」という問題が起こります。
解決方法は2通りあるようだが、素直に強制インストールでいいと思う。ということで、
dpkg --force-depends -i /var/cache/apt/archives/dpkg_1.14.16.6ubuntu3_i386.debとすれば、エラーを無視して最新dpkgがインストールされる。あとはaptitudeで良し。
それにしても、dpkgのforceオプションは難しい。種類も多いし、--force-dependsの動作は思っていたのとちょっと違った。やれやれ。