find which package provides a particular file?

I was trying to build an RPM today and the compilation errored out because the file glibconfig.h couldn’t be found. I managed to track it down to the package glib2-devel.

The problem is that I couldn’t find a way to do this via zypper. In Mandriva I would’ve just done ‘urpmf glibconfig.h’ and it would’ve told me that it’s provided by the package glib2-devel.

Is there equivalent functionality in zypper? (glibconfig.h is an easy pick as being related to glib, but some header file names might be more obscure for example)

rpm -qf /path/to/file

This is not what I’m after as that will only find the package that a pre-existing file belongs to.

What I’m looking for is when a compiler spits out an error message that says ‘missing someheaderfile.h’ I can ask zypper which package that file comes from so that I know which package to install to solve the problem.

Mandriva’s urpmi has this functionality (Urpmi - Mandriva Community Wiki), does zypper?

Apparently not: https://features.opensuse.org/308437
:frowning:

tk83 wrote:
> What I’m looking for is when a compiler spits out an error message that
> says ‘missing someheaderfile.h’ I can ask zypper which package that file
> comes from

as far as i know that feature is not in zypper (yet?)…

the urpmf command you used in Mandriva seems to come from a package
called URPMI which is apparently (i say after googling) the Mandriva’s
package management system…

as far as i can see that system is not available via the openSUSE
repos or build service…but there are others besides zypper, see here
http://en.opensuse.org/Concepts#Software_Package_Managers_.28SPMs.29

maybe one has what you seek, or you could ask for the feature you are
missing in openSUSE, here: http://en.opensuse.org/Fate

or, if you must you could revert back to using Mandriva and ask them
to provide the openSUSE features you miss…

or, maybe URPMI can be installed and work perfectly with openSUSE–but
i doubt it…give it a try (in a sandbox)…


palladium