On Mon, Sep 5, 2011 at 6:04 PM, Garrett Holmstrom <[email protected]>wrote:
> On 2011-09-05 12:51, Andrew Z wrote: > >> On Mon, Sep 5, 2011 at 3:43 PM, Garrett Holmstrom <[email protected] >> <mailto:[email protected]>**> wrote: >> >> On 2011-09-05 8:16, Andrew Z wrote: >> >> i'm not sure why there is a difference in the output of "rpm -q >> --whatrequires " and "yum remove" >> >> >> The rest of the packages depend on the .so file, not the package name: >> >> [5508] gholms@lux ~ % rpm -q --whatrequires >> 'libxklavier.so.15()(64bit)' >> >> libxklavier-4.0-7.el6.x86_64 >> libgnomekbd-2.28.2-2.el6.x86__**_64 >> kdebase-workspace-4.3.4-19.__**el6.x86_64 >> gnome-settings-daemon-2.28.2-_**_11.el6.x86_64 >> control-center-2.28.1-25.__**el6.x86_64 >> gdm-2.30.4-21.el6_0.1.x86_64 >> gnome-applets-2.28.0-7.el6.__**x86_64 >> gnome-screensaver-2.28.3-8.__**el6.x86_64 >> >> -- >> Garrett Holmstrom >> >> >> --- >> -- slowly descending into more confusion .... >> >> Garret, can you please run "yum remove libxklavier"? >> > > It would be better to just explain what is actually happening. The > libxklavier package provides three things: > > [5610] gholms@lux ~ % rpm -q --provides libxklavier.x86_64 > > libxklavier.so.15()(64bit) > libxklavier = 4.0-7.el6 > libxklavier(x86-64) = 4.0-7.el6 > > The first of these is the library itself, namely > /usr/lib64/libxklavier.so.15. rpmbuild automatically adds dependencies of > this type to packages that link against shared libraries. > > The rest are used for things that depend on the package by name. For > instance, this includes gnome-applets-2.28.0-7.el6.**x86_64's dependency > on "libxklavier >= 4.0". > > By having yum remove the libxklavier package you remove all three of these, > but your rpm query only searched for things that depend on the second. To > get an accurate list of what directly depends on a package you must check > *everything* that the package provides. > > [5616] gholms@lux ~ % rpm -q --provides libxklavier.x86_64 | sed 's/=.*//' > | xargs rpm -q --whatrequires | sort | uniq > > control-center-2.28.1-25.el6.**x86_64 > gdm-2.30.4-21.el6_0.1.x86_64 > gnome-applets-2.28.0-7.el6.**x86_64 > gnome-screensaver-2.28.3-8.**el6.x86_64 > gnome-settings-daemon-2.28.2-**11.el6.x86_64 > kdebase-workspace-4.3.4-19.**el6.x86_64 > libgnomekbd-2.28.2-2.el6.x86_**64 > libxklavier-4.0-7.el6.x86_64 > no package requires libxklavier(x86-64) > > -- > Garrett Holmstrom > Garrett, i think i'm hang up on the definition of "requires". To me it means "won't work if removed". But with this definition i have problem digesting the difference in "Yum remove" output and your (really cool) one line. Thank you! AZ
