rpmbuild stops with debugedit error on F8

John Dennis jdennis at redhat.com
Mon Nov 5 13:52:20 UTC 2007


Roland McGrath wrote:
> Ok, it's simply as it says.  /rpmbuild/build is 15 chars and /usr/src/debug
> is 14 chars.  That's just a bad choice for the directory name.  In koji
> builds go under /builddir/build/BUILD (21 chars), so there is no problem.
> The default for vanilla rpmbuild is /usr/src/redhat/BUILD (21 chars).
> 
> It's a technical limitation of the debugedit program that, like the error
> message says, the length of the top build directory name has to be 14 chars
> (to match /usr/src/debug), or more than 15 chars.  It does a very limited
> kind of rewriting of the very complex DWARF formats, so there has to be
> enough room in the existing string table for the new directory name.
> Making it able to cope in the general case opens huge cans of worms, and is
> absolutely not going to happen any time soon (or ever in that program as it
> exists today).
> 
> Suffice it to say it is far, far more work than is justified to avoid the
> arcane but trivial caveat that the base directory name used for builds must
> be at least 16 chars long.

Thank you very much Roland, I really appreciate the explanation! I would 
have been really stuck without it.

The only thing I might take issue with is your belief the error message 
is patently obvious. There is no reference to the top build directory or 
the requirements for it's length. Just something cryptic about 1 
character differentials in arguments passed to what is essentially a 
private rpm utility unlikely to ever be invoked directly.

May I suggest the error message be replaced with something which would 
direct a developer to the root cause of the problem, especially since 
this is a somewhat arcane limitation.

This is what rpmbuild spits out:

extracting debug info from 
/var/tmp/freeradius-1.1.7-3.2.ipa.fc8-root-jdennis/usr/lib/rlm_passwd-1.1.7.so
/usr/lib/rpm/debugedit: -b arg has to be either the same length as -d 
arg, or more than 1 char shorter
error: Bad exit status from /var/tmp/rpm-tmp.74023 (%install)

I truly would never have matched the fact a build directory of 
"/rpmbuild/build" was the offending culprit, the string does not even 
appear in the error message.

Maybe rpmbuild should stop immediately with an error if you invoke it 
with a topdir which is unacceptable to it's internal operation.

Filed as bug: https://bugzilla.redhat.com/show_bug.cgi?id=366781

-- 
John Dennis <jdennis at redhat.com>




More information about the fedora-devel-list mailing list