On Thursday 2016-12-15 17:38, Roger Oberholtzer wrote:
1. rpm -qi libsndfile1 => gives you the SRPM name. 2. checkout openSUSE:Factory/$name/$name.spec and look for one or more devel subpackages.
Obtain and parse the .spec file to get the -devel name?
Whatever it is you are looking for.
Usually, you can install things using their pkgconfig() or cmake() Provides.
for example, to install on openSUSE systems, you can use "zypper install -C 'pkgconfig(sndfile)'".
On Red Hat/Fedora systems, "yum install 'pkgconfig(sndfile)'" works in the same manner.
But I cannot deduce the name 'sndfile' from a compiled program.
Why would a compiled program care? (Also, you do not have to deduce "pkgconfig(sndfile)", because it is a known fixed string.)
my current method also reports the names of RPMs needed as a dependency of some library.
It is just the -devel RPM naming part that is, to me, inconsistent.
It is a compromise. RPM supports installing packages sharing the same name concurrently as long as they do not conflict. But doing that is brittle to the point that you cannot rpm -U your system without collapsing same-name packages to one. So in openSUSE, unique identifiers are used for shlib packages like libncurses5 and libncurses6. ncurses actually also highlights a case: there is just one devel and one srpm, not two. -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-buildservice+owner@opensuse.org