我在 CentOS 6.5 上有一个软件包 (.rpm),需要 .so 文件,我的机器上也有该文件。当我尝试安装该软件包时,出现错误,指出有关 .so 文件的未解决的依赖关系。我尝试将 .so 文件放在同一目录中,在 /lib/ 中,在 /usr/lib/ 中,并将 LD_LIBRARY_PATH 的路径设置为 /usr/lib/ ,但无论该包都没有解决依赖关系,如何解决我使 .so 可用于我正在安装的软件包吗?
答案1
的输出是什么yum provides /full/path/to/file.so
?正如第一条评论所建议的,so 可能安装在 rpm db 之外(例如手动编译或复制)。一些非官方的 rpm 打包得很差,并且依赖于开发人员机器中的依赖项。如果您可以提供包名称和来源,将会有所帮助。
如果.so
存在并且您知道它满足要求(版本方面等),您可以使用rpm --nodeps
.然而,这不是推荐的做法。
更新
根据 @Centimane 的评论,如果 .so 文件由 rpm 提供,并且您的系统上未安装 rpm,那么这可能是一个好主意(取决于版本并确保这不会破坏当前安装的应用程序)使用命令输出中找到的 rpm 安装 .so yum provides
。
yum provides /full/path/to/file.so
yum install <package name found by previous command>
或者甚至直接
yum install /full/path/to/file.so