Courier-0.47 RPMBuild error

Sam Varshavchik mrsam at courier-mta.com
Tue Nov 16 04:15:38 UTC 2004


Fedora List Subscriber writes:

> Hi list
> 
> When trying to build an RPM [yes, I don't have an anvil to drop on my
> foot instead! ;-P ] in FC2 (patched up2date):
> 
> // rpmbuild -ta -v courier-0.47.tar.bz2
> 
> results in the following error:
> 
> // A few lines of output to indicate at what stage this failed ...
> //
> // Processing files: courier-debuginfo-0.47-1.2
> // Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1
> // rpmlib(PayloadFilesHavePrefix) <= 4.0-1
> //
> 
> RPM build errors:
>     File not found by glob:
> /var/tmp/courier-0.47-1.2-buildroot/usr/local/bin/*

This is a bug in rpm/glibc.  stracing rpm shows that it globs out 
"%{_bindir}/*" by calling stat() on each filename.

In an RPM buildroot image, intra-package soft links are obviously broken, 
since they point outside the buildroot.  stat() fails on them.

Bug 139460.

Looks like recently rpm switched from lstat() to stat(), when globbing out 
%files.

This bug must've been hiding for quite some time.  You'll only hit it if 
you're building a package that installs softlinks for the first time, or if 
the newer version of an installed package installs new soft links.  
Otherwise, inside the build root the softlinks point to the existing 
installation's files, outside of the buildroot, stat() succeeds, and rpm 
processes the results from glob().


-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/fedora-devel-list/attachments/20041115/e66b63da/attachment.sig>


More information about the fedora-devel-list mailing list