Red Hat Bugzilla – Bug 46696
rpm package missing zlib dependency
Last modified: 2007-04-18 12:34:19 EDT
Description of Problem:
Cannot load /usr/lib/librpmio.so.0 unless zlib-1.1(?) is installed.
However, rpm-4.0.2 does not have such requirement.
Steps to Reproduce:
# up2date -l
Traceback (innermost last):
File "/usr/sbin/up2date", line 9, in ?
ImportError: /usr/lib/librpmio.so.0: undefined symbol: gzseek
This is a legacy Redhat 5.2 upgrade to 6.2.
# rpm -q --whatprovides librpmio.so.0
# rpm -q zlib
Manually enforce rpm-4 dependency on zlib-1.1. (I guess.)
# rpm -U ftp://ftp.redhat.com/pub/redhat/redhat-6.2-
# up2date -l
Retrieving list of all available packages...
But the rpm-4.0.2-6x package *does* depend on libz.so.1. Checking
$ rpm -qp --requires rpm-4.0.2-6x.i386.rpm
Do *all* versions of libz.so.1 export gzseek? What I reported was zlib-1.0 may
satisfy libz.so.1 but doesn't not export gzeek.
The gzseek function was available in the newer zlib-1.1 but the dependency was
*NOT* reflected in the rpm package.
IOW, librpmio.so.0 provided by rpm-4.0 cannot load without a version of zlib
that exports gzeek.
gzseek was added in zlib-1.0.4 IIRC. Recompile and install
a Red Hat 6.2 package for zlib
rpm --rebuild zlib-1.1.3-6.src.rpm
and you should be fine.
FWIW, rpm itself never does a gzseek, but gzseek is part of the
Thanks for the input, jbj. But, as stated in the first post, I had already
manually upgraded zlib to resolve the dependency. I'm fixed. Just trying to
help you build a tighter product and document a defect for the next poor guy
that stumbles across it.
My point (not sure if it's clear enough) is that the packaging system gave me
*NO* indication of this dependency. Is adding 'Requires: zlib >= 1.1' to
rpm.spec really that crazy of an idea?!?
Lastly, your assertion that gzseek was added to zlib-1.0.4 seems false. I had
zlib-1.0.4-2 installed and gzseek was still undefined. You'll have to troll the
various releases of zlib to find when it was really added...I'm only guesssing
1.1 since that's what worked for me. (1.0.4 -> 1.1.3)