handling of symlinks to symlinks in spec file

Domen Vrankar domen.vrankar at gmail.com
Mon Apr 11 19:02:09 UTC 2016


Hi,

Someone reported to me an issue regarding rpm and symlinks to symlinks.
I've reproduced it on Fedora 21 and 23.

Let's assume, I have a library, e.g. liblibrary.so.5.6.7 and I have
two symbolic links, so the result of "ls -l" would look like this

liblibrary.so -> liblibrary.so.0
liblibrary.so.0 -> liblibrary.so.5.6.7
liblibrary.so.5.6.7

and part of spec file would look like this

%files
%defattr(-,root,root,-)
"/usr/lib/liblibrary.so"
"/usr/lib/liblibrary.so.0"
"/usr/lib/liblibrary.so.5.6.7"

When running "rpm -i project1.1-Linux.rpm" it outputs a dependency
resolution error

error: Failed dependencies:
    libtest_lib.so()(64bit) is needed by project1-1.2.1-1.x86_64

Either removing library.so from spec file or setting

Autoreq: NO

in it removes the error.

Is this a bug in rpmbuild automatic dependency resolution for symlinks
to simlyinks?
Is there is something that should be set in spec file for such cases?

Thanks,
Domen


More information about the Rpm-list mailing list