如何使用 pacman 强制删除 Arch 中的包?

如何使用 pacman 强制删除 Arch 中的包?

如何在 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 拆分了一大堆软件包,我需要删除它,以便重新安装它。

答案1

您应该能够通过简单的操作重新安装该软件包:

pacman -S perl-libwww
  • 这只会删除 perl-libwww:
    pacman -Rdd perl-libwww
    
    -d请注意命令中的 double ,如果使用,--nodeps则也必须指定两次或将其与-d类似的组合:
    pacman -R --nodeps --nodeps perl-libwww
    pacman -Rd --nodeps perl-libwww
    
  • 这将删除所有依赖于的包perl-libwww
    pacman -Rc perl-libwww
    

来自pacman的手册页:

-d,--nodeps

跳过依赖项版本检查。仍会检查包名称。通常,pacman 会始终检查软件包的依赖项字段,以确保所有依赖项均已安装并且系统中不存在软件包冲突。指定此选项两次可跳过所有依赖性检查。

-c,--cascade

删除所有目标包,以及依赖于一个或多个目标包的所有包。此操作是递归的,必须小心使用,因为它可能会删除许多可能需要的包。

相关内容