我创建,其具有以下共享对象RPM:RPM缺少依赖
libexample.so --> libexample.so.1.0.1
libexample.so.1.0.1
当我创建使用rpmbuild
的RPM,我看到的rpm提供libexample.so.1.0.1
。 但是,在需要部分我看到libexample.so
在项目的makefile
我指libexample.so
当我试图安装它给出了一个错误"Missing dependency: libexample.so"
即使它被打包为一个链接文件指向的rpm到libexample.so.1.0.1
所以问题是某种RPM没有考虑到我的包装libexample.so
(这是一个链接到libexample.so.1.0.1
)
不过,我装转速使用--nodeps
选项,一切工作正常。
所以,我的问题是我应该如何修改以避免错误的依赖关系。
为了验证缺少的依赖关系是由于链接文件引起的,我将libexample.so
从链接文件更改为实际共享对象(cp libexample.so.1.0.1 libexample.so
),并且rpm不会提供缺少的依赖关系错误。
有人可以帮助告诉我我缺少什么,以及如何解决这个在RPM中缺少的依赖关系错误。提前感谢您的帮助和时间。
分享规格文件? –
spec文件没有什么奇特的。除文件外,所有部分都是空的。在%files部分,它指向包含所有文件的目录。 (例如,%atrib .../a/b/c - 要打包的所有文件位于/ a/b/c下;包括共享库。) – Bill
要么使用术语“提供”和“要求”错误(在rpm环境中有特殊含义),或者你正在做一些非常可怕的事情。无论如何,发布你的spec文件。 – drahnr