rpm 安装文件存在问题

rpm install file exist issue

有一个关于安装 rpm 的问题。 当我安装 rpm 文件时

rpm -ivh myrpm.rpm

系统将显示

error: Failed dependencies:
    libapr-1.so.0()(64bit) is needed by myrpm

但是当我使用 locate

检查系统时
locate libapr-1.so.0
/usr/lib/libapr-1.so.0
/usr/lib/libapr-1.so.0.3.9

文件似乎存在

有什么想法吗?

文件在您的系统上是不够的:它必须通过 rpm 安装。可能 libapr 是手动安装的,而不是使用 rpm。所以要么:

  • 卸载 libapr,然后使用 rpm 重新安装它
  • 安装你的myrpm忽略他找不到libapr的事实(rpm -i --nodeps);但这很危险,因为 --nodeps 开关将忽略所有依赖项!

我会告诉你我的想法,我在这里看到两种可能的情况:

A) 您没有通过 RPM 安装 /usr/lib/libapr-1.so.0,因此 RPM 的包数据库中不会有任何记录。 RPM 只知道通过 RPM 包正确安装的文件。这可以通过询问 RPM 它认为这些文件来自哪里来检查:

rpm -qf /usr/lib/libapr-1.so.0 /usr/lib/libapr-1.so.0.3.9

B) 您正在安装需要 64 位版本的 libapr-1.so.0 而您只安装了 32 位版本(/usr/lib 通常是所有 32 位或 noarch 的地方为 RedHat/Fedora/Centos、/usr/lib64 存储将具有 64 位库)。除非你有 64 位系统,否则你可能应该安装 32 位 RPM。

希望对您有所帮助