Bug 130779 - debuginfo rpms made useless by containing only links to nonexistent source files
Summary: debuginfo rpms made useless by containing only links to nonexistent source files
Alias: None
Product: Fedora
Classification: Fedora
Component: rpm
Version: rawhide
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Paul Nasrat
QA Contact: Mike McLean
Depends On:
Blocks: FC3Target FC4Target
TreeView+ depends on / blocked
Reported: 2004-08-24 17:06 UTC by Jason Vas Dias
Modified: 2007-11-30 22:10 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2005-04-19 18:40:02 UTC

Attachments (Terms of Use)

Description Jason Vas Dias 2004-08-24 17:06:35 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040510

Description of problem:
 When RPMs are built and debuginfo packages are generated,
 the debuginfo package contains symbolic links to the source
 files on the build system, not the source files themselves.
 This renders debuginfo packages useless - they cannot be
 used for debugging unless installed on the system that 
 built the RPM.

 For instance,  dhcp-debuginfo-3.0.1-7.i386.rpm, as built by
 the build system, contains no source code files, only links
 to where they were when the package was built:

lrwxrwxrwx  1 root root 56 Aug 24 12:08
/usr/src/debug/dhcp-3.0.1/work.linux-2.2/server/mdb.c ->

 The /usr/src/build/438185-i386/BUILD/dhcp-3.0.1/server/mdb.c
 file does not exist on the target platform, hence dhcp cannot
 be debugged on the target platform using the dhcp-debuginfo

 This seems to be true for all the *debuginfo rpms; they are 
 quite useless for debugging purposes, since all the source
 files they contain are links to non-existent files.

 The debuginfo packages must contain the actual source files,
 not links.

Version-Release number of selected component (if applicable):
redhat-rpm-config-8.0.28-1.1.1, 8.0.28-2

How reproducible:

Steps to Reproduce:
1. Build an rpm with rpmbuild containing executable shared objects
2. The "%{name}-debuginfo-%{version}-%{release}.%{arch}.rpm" 
   debuginfo package is generated

Actual Results:     
   The debuginfo package will contain only links to the
   source files on the build server, not the files themselves,
   rendering the debuginfo package useless for debugging 
   (or any other!) purposes. 

Expected Results:     
   The debuginfo package should install the actual source code files
   under /usr/src/debug/%{name}-%{version}, not links

Additional info:

Comment 1 Jason Vas Dias 2004-08-25 14:02:27 UTC
 Oops - this is less severe a problem than I first thought - it appears
 the actual source files in dhcp build tree and the other package I
 looked at ARE links - but still the links should be resolved and the
 actual source files should be put into the debuginfo package. 

Comment 2 Elliot Lee 2004-12-03 20:09:09 UTC
This is made worse by the package using absolute symlinks instead of
relative ones. The core of the problem is rpm's find-debuginfo.sh
script. Fixing it is possible but it'd take a lot of hacking and we
don't have anyone maintaining the debuginfo stuff (which is actually
in rpm itself).

In a word: submit patches. :)

Comment 3 Jeff Johnson 2004-12-08 04:04:40 UTC
Yah, what sopwith said.

"Patches cheerfully accepted." is my mantra too.

NEEDINFO waiting for patches ...

Comment 4 Jeremy Katz 2005-04-19 18:40:02 UTC
Closing due to inactivity.  If this issue still occurs with current releases,
please reopen and set the release in which you've encountered the problem.

Note You need to log in before you can comment on or make changes to this bug.