Linux,Fedora 23:如何解决安装/包冲突



我会让它稍微通用一点,希望这个解决方案可能更有用(假设有)。

我一直在尝试在Fedora 23下运行一个应用程序,该应用程序在官方存储库中提供。它安装得很好,但不会启动。从终端运行它告诉我:

"unable to find <this.so>"

其中

<this.so>

指的是应用程序找不到的特定库。

在下面的外部帮助中,我运行了一些终端命令,试图缩小问题范围。如果我试图安装明显丢失的

<this.so>

通过安装使用提供它的程序包

"dnf install <that.package>"

返回

"<that.package> is already installed. Skipping"

如果我运行

"$ locate <this.so>"

它返回(我现在是具体的):

/usr/lib/<this.so>

向我表明它相信图书馆就在那个地方。

如果我运行

"dnf provides <this.so>"

它再次指向

dnf : system @root

然而,如果我运行

"rmp -Va"

首批退回的物品之一是

missing.... /usr/lib64/<this.so>

再次似乎指的是同一个实例,但位置不同。所以我的问题是:

如何解决此差异?该应用程序告诉我它没有安装,locate告诉我它安装了,rmp告诉我它不见了,但来自不同的位置。

很明显,我已经做了大量的"dnf-clean-all"updatedb"和重新启动。还有什么我可以尝试的吗?

如果您使用的发行版是x86_64,那么您可以拥有bot x86_64和i686库。如果你用dnf列出可用的包,你可以看到包名上有一个后缀,表明它们用于什么体系结构。

对于您的情况,我认为您只需要重新安装您需要的两个版本的软件包:

dnf reinstall <that.package> <that.package>.i686

最新更新