Arch の pacman
を使って、他のパッケージがまだ依存しているパッケージを強制的に削除するにはどうしたらよいでしょうか。
pacman -R perl-libwww
checking dependencies...
error: failed to prepare transaction (could not satisfy dependencies)
:: perl-app-cpanminus: requires perl-libwww>=5.828
:: perl-app-pmuninstall: requires perl-libwww
:: perl-app-sd: requires perl-libwww
:: perl-catalyst-action-rest: requires perl-libwww>=2.033
:: perl-catalyst-runtime: requires perl-libwww>=1.64
:: perl-cpan: requires perl-libwww
:: perl-cpan-mini: requires perl-libwww
:: perl-cpan-uploader: requires perl-libwww
:: perl-feed-find: requires perl-libwww
:: perl-http-body: requires perl-libwww
:: perl-http-request-ascgi: requires perl-libwww
:: perl-module-cpants-analyse: requires perl-libwww
:: perl-module-install: requires perl-libwww>=5.812
:: perl-net-trac: requires perl-libwww
:: perl-net-whois-raw: requires perl-libwww
:: perl-prophet: requires perl-libwww
:: perl-rt-client-rest: requires perl-libwww
:: perl-uri-fetch: requires perl-libwww
:: perl-www-mechanize: requires perl-libwww
:: perl-xml-atom: requires perl-libwww
:: perl-xml-feed: requires perl-libwww
基本的に LWP 6 はたくさんのパッケージを分割しているので、再インストールするためにはそれを削除する必要があります。
簡単な操作でパッケージを再インストールすることができるはずです。
# pacman -S perl-libwww
これはperl-libwwwを削除するだけです。
# pacman -Rdd perl-libwww
コマンドの中の二重の-dに注意してください。もし、--nodepsを使う場合は、これも二重に指定するか、-dと組み合わせる必要があります。
# pacman -R --nodeps --nodeps perl-libwww
# pacman -Rd --nodeps perl-libwww
このコマンドは、perl-libwwwに依存するすべてのパッケージを削除します。
# pacman -Rc perl-libwww
pacman's man page より。
-d, --nodeps 依存関係のバージョンチェックをスキップします。パッケージ名はそのまま をチェックします。通常、pacman は常にパッケージの 依存関係のフィールドをチェックして、全ての依存関係がインストールされていて インストールされているか、システム内でパッケージのコンフリクトがないかを確認します。 システムにパッケージの競合がないことを確認します。このオプションを2回指定すると、全ての依存関係のチェックを チェックを行います。 -c, --cascade すべての対象パッケージと、1つ以上の対象パッケージに依存するすべてのパッケージを すべての対象パッケージと、1つ以上の対象パッケージに依存するすべてのパッケージを削除します。この操作は再帰的です。 この操作は再帰的で、潜在的に必要な多くのパッケージを削除する可能性があるため、注意が必要です。 この操作は再帰的で、必要とされる可能性のある多くのパッケージを