Bug 235656
Summary: | Warning: cpio: .../<built-in>: No such file or directory | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Jan Kratochvil <jan.kratochvil> | ||||||
Component: | rpm | Assignee: | Panu Matilainen <pmatilai> | ||||||
Status: | CLOSED RAWHIDE | QA Contact: | |||||||
Severity: | low | Docs Contact: | |||||||
Priority: | medium | ||||||||
Version: | rawhide | ||||||||
Target Milestone: | --- | ||||||||
Target Release: | --- | ||||||||
Hardware: | x86_64 | ||||||||
OS: | Linux | ||||||||
Whiteboard: | |||||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||||
Doc Text: | Story Points: | --- | |||||||
Clone Of: | Environment: | ||||||||
Last Closed: | 2007-08-08 13:08:40 UTC | Type: | --- | ||||||
Regression: | --- | Mount Type: | --- | ||||||
Documentation: | --- | CRM: | |||||||
Verified Versions: | Category: | --- | |||||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||
Cloudforms Team: | --- | Target Upstream Version: | |||||||
Embargoed: | |||||||||
Attachments: |
|
Description
Jan Kratochvil
2007-04-09 09:45:53 UTC
Created attachment 151951 [details]
rpmbuild --rebuild built-in-1.0-0.src.rpm
This problem appears to be fixed in rpm-4.4.9: + cp -p built-in /var/tmp/built-in-root/ + /usr/lib/rpm/find-debuginfo.sh /usr/src/rpm/BUILD/ extracting debug info from /var/tmp/built-in-root/built-in 1 block + /usr/lib/rpm/brp-compress + /usr/lib/rpm/brp-strip # rpm -q rpm-build gcc cpio rpm-build-4.4.9-0.3.i386.rpm gcc-4.1.2-7.i386.rpm cpio-2.6-27.fc7.i386.rpm I'll be happy to try any other reproducers you have if the problem is still present. UPSTREAM For proper check (if your GCC builds it the same way etc.) please verify that: readelf -a --debug-dump built-in-debuginfo-1.0-0.x86_64/usr/lib/debug/built-in.debug|grep -5 built-in prints the content with '<built-in>': The File Name Table: Entry Dir Time Size Name 1 0 0 0 built-in.c 2 1 0 0 stdarg.h 3 0 0 0 <built-in> Anyway still the Bug should be open as the latest Red Hat rawhide RPM is 4.4.2. Hmmm, very different results. What am I missing? Likely FC CFLAGS are different ... $ rpm2cpio ../built-in-debug-1.0-0.i386.rpm | cpio -dim 15 blocks $ readelf -a --debug-dump ./usr/lib/debug/built-in.debug|grep -5 built-in ... The File Name Table: Entry Dir Time Size Name 1 0 0 0 built-in.c 2 1 0 0 stdarg.h ... Here is my build: ... Executing(%build): /bin/sh -e /X/tmp/rpm-tmp.4476 + umask 022 + cd /X/built-in + rm -rf built-in-1.0 + mkdir built-in-1.0 + cd built-in-1.0 + rm -f built-in.c + echo '#include <stdarg.h>' + echo 'va_list ap;' + echo 'int main (void) { return 0; }' + gcc -o built-in built-in.c -O2 -g -m32 -march=i386 -mtune=generic -fasynchronous-unwind- tables -ggdb3 + exit 0 Executing(%install): /bin/sh -e /X/tmp/rpm-tmp.4476 + umask 022 + cd /X/built-in + /bin/rm -rf /X/tmp/built-in-root + /bin/rm -rf /X/tmp/built-in-root + cd built-in-1.0 + mkdir /X/tmp/built-in-root + cp -p built-in /X/tmp/built-in-root/ + /usr/lib/rpm/find-debuginfo.sh /X/built-in/ extracting debug info from /X/tmp/built-in-root/built-in Only dest dir longer than base dir not supported 0 blocks + /usr/lib/rpm/brp-compress + /usr/lib/rpm/brp-strip + /usr/lib/rpm/brp-strip-static-archive + /usr/lib/rpm/brp-strip-comment-note + /usr/lib/rpm/brp-nobuildrootpath Ah yes, there is the problem, the silly rewrite of file names without reallocating a larger elf section: Only dest dir longer than base dir not supported Hang on ... Not *the* problem, just one of many problems with -debuginfo Here's the results when built on a longer path so that debugedit can change file names without reallocating the elf section: The File Name Table: Entry Dir Time Size Name 1 0 0 0 built-in.c 2 1 0 0 stdarg.h What CFLAGS do I miss: + gcc -o built-in built-in.c -O2 -g -m32 -march=i386 -mtune=generic -fasynchronous-unwind- tables -ggdb3 Created attachment 152269 [details]
rpm -qa
Is it easy enough for you to reproduce it on x86_64?
The build looks different depending on whether `redhat-rpm-config' is
installed, still in both cases it produced the same error. The log below is on
a system without `redhat-rpm-config'.
This log is from FC6 but the bug is apparently present even in Fedora Rawhide
as the warnings are produces even in the build system (mock/brew).
What distro do you run on? It may be really GCC dependent, this `<built-in>'
name may be a subject for discussion whether it is not a GCC bug at all.
$ rpmbuild --rebuild /tmp/built-in-1.0-0.src.rpm
Installing /tmp/built-in-1.0-0.src.rpm
Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.25573
+ umask 022
+ cd /home/jkratoch/src/rpm/BUILD
+ rm -rf built-in-1.0
+ mkdir built-in-1.0
+ cd built-in-1.0
+ rm -f built-in.c
+ echo '#include <stdarg.h>'
+ echo 'va_list ap;'
+ echo 'int main (void) { return 0; }'
+ gcc -o built-in built-in.c -O2 -g -ggdb3
+ exit 0
Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.73432
+ umask 022
+ cd /home/jkratoch/src/rpm/BUILD
+ cd built-in-1.0
+ mkdir /var/tmp/built-in-root
+ cp -p built-in /var/tmp/built-in-root/
+ /usr/lib/rpm/find-debuginfo.sh /home/jkratoch/src/rpm/BUILD/
extracting debug info from /var/tmp/built-in-root/built-in
cpio: built-in-1.0/<built-in>: No such file or directory
1 block
+ exit 0
Processing files: built-in-1.0-0
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Requires: libc.so.6()(64bit) libc.so.6(GLIBC_2.2.5)(64bit) rtld(GNU_HASH)
Processing files: built-in-debug-1.0-0
Checking for unpackaged file(s): /usr/lib/rpm/check-files
/var/tmp/built-in-root
Wrote: /home/jkratoch/src/rpm/RPMS/x86_64/built-in-1.0-0.x86_64.rpm
Wrote: /home/jkratoch/src/rpm/RPMS/x86_64/built-in-debug-1.0-0.x86_64.rpm
Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.73432
+ umask 022
+ cd /home/jkratoch/src/rpm/BUILD
+ rm -rf /var/tmp/built-in-root
+ exit 0
Executing(--clean): /bin/sh -e /var/tmp/rpm-tmp.73432
+ umask 022
+ cd /home/jkratoch/src/rpm/BUILD
+ exit 0
You're in luck, I just got access to CentOS5/x86_64. I'll try to reproduce this weekend. Thanks for the help. Adding a comment so I can find this bug in spite of Bugzilla normal -> medium changes. Seems to have been fixed by Roland McGrath's new fancy find-debuginfo.sh, will be in next rawhide push. |