其乐融融的IT技术小站

修复 Arch Linux 中的 “target not found” 错误

有一天,我尝试在 Arch Linux 上安装 Hyprland。当我使用 Pacman 命令安装 它时,它抛出 “target not found”(目标未发现)错误。

$ sudo pacman -S hyprland
[sudo] password for abhishek:
error: target not found: hyprland

这是一个意外,因为我知道 Hyprland 是可用的。

我的修复方法是更新系统,在大多数情况下,它可以解决此问题。

sudo pacman -Syu

这里,本地包数据库不同步。我需要更新缓存。这里还建议更新系统。

在大多数情况下,这就是修复此错误的方法。但是,你看到此错误的原因可能还有其他一些。让我在这里详细讨论它们。

修复:更新系统

Arch Linux 是一个 滚动发布发行版,并且它提供的更新非常频繁。如果你不每隔几天更新一次系统,你的本地包数据库将与远程镜像不同步,并且你将在安装软件包时遇到问题。

本地包数据库仅保留包的元数据,例如版本号、用于获取包的仓库 URL 等。

当你搜索软件包时,pacman 会提供搜索结果,表明该软件包可用。但是,该包在你的本地数据库中具有较旧的版本号。当 pacman 在远程仓库中搜索包(以获取实际的包)时,它不再找到旧版本的 URL。

这就是导致 “target not found” 错误的原因。

修复方法是更新本地数据库。这可以与 pacman -Sy 一起使用,但是,建议 更新整个 Arch Linux 系统 以避免依赖冲突等。

sudo pacman -Syu

赞 ()
分享到:更多 ()

相关推荐

内容页底部广告位3
留言与评论(共有 0 条评论)
   
验证码: