Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Jim Blandy <jimb@redhat.com>
To: Alexander Larsson <alexl@redhat.com>
Cc: gdb@sources.redhat.com
Subject: Re: Final separate debug info patch
Date: Tue, 19 Nov 2002 03:38:00 -0000	[thread overview]
Message-ID: <vt2el9hhkjs.fsf@zenia.red-bean.com> (raw)
In-Reply-To: <Pine.LNX.4.44.0211190244510.10486-100000@devserv.devel.redhat.com>


Alexander Larsson <alexl@redhat.com> writes:
> On 19 Nov 2002, Jim Blandy wrote:
> 
> > 
> > It looks like the stripping process may break some executables.  If $D
> > is the top directory of a current GDB source tree, try this:
> > 
> > $ g++ --version
> > g++ (GCC) 3.3 20020820 (experimental)
> > Copyright (C) 2002 Free Software Foundation, Inc.
> > This is free software; see the source for copying conditions.  There is NO
> > warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
> > 
> > $ g++ -g $D/gdb/testsuite/gdb.c++/try_catch.cc -o try_catch
> > $ ./try_catch
> > $ /home/jimb/elfutils/bin/strip -f try_catch.separate-debug try_catch
> > $ ./try_catch
> > Segmentation fault
> > $ 
> 
> This doesn't happen for me with gdb from cvs HEAD and gcc (GCC) 3.2 
> 20020903 (Red Hat Linux 8.0 3.2-7). Does it happen if you just run strip 
> without the -f flag? It might well be a bug in the new strip
> command.

Yeah, it seems to be:

zenia:separate-debug$ g++ -g $D/gdb/testsuite/gdb.c++/try_catch.cc -o try_catch
zenia:separate-debug$ ./try_catch
zenia:separate-debug$ /home/jimb/elfutils/bin/strip try_catch
zenia:separate-debug$ ./try_catch
Segmentation fault
zenia:separate-debug$ 

This is happening with a pretty motley collection of utilities, so I'm
not sure I can show how to reproduce it.  If you could try running the
GDB test suite on your box with the stuff I've provided, that would be
nice.

Here's the latest iteration of my unix-separate-debug.exp file:

---
load_base_board_description "unix"

set strip_to_file_program "/home/jimb/elfutils/bin/strip"

proc ${current_target_name}_compile {source dest type options} {
    global strip_to_file_program

    # Run the standard compilation procedure.
    set result [default_target_compile $source $dest $type $options]

    # If it didn't succeed, return directly.
    if {[string compare $result ""] != 0} {
        return $result
    }

    # Otherwise, strip the executable and copy its debug info to a
    # separate file, leaving only a pointer behind.
    if {[string compare $type executable] == 0} {
        exec $strip_to_file_program -f ${dest}.separate-debug ${dest}
    }
}

# "unix" is a magic target name to is_remote, so since we're not named
# "unix", we have to spell some stuff out.

# We can't just call set_board_info here, since 
# 1) that doesn't strip off variant information, and 
# 2) it won't override the default guess established by setup_target_hook.

set board_info([lindex [split $board "/"] 0],isremote) 0
---

See if you can get that working.  There is a regression in reread.exp,
and you can ignore everything in schedlock.exp.  But you may find
something that tweaks the problem on your system.

My stripped program seems to be crashing in _dl_map_object_deps...


  reply	other threads:[~2002-11-19 11:38 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-10-09  1:54 Alexander Larsson
2002-11-18 21:20 ` Jim Blandy
2002-11-18 21:32   ` Daniel Jacobowitz
2002-11-19  3:53     ` Jim Blandy
2002-11-18 23:47   ` Alexander Larsson
2002-11-19  3:38     ` Jim Blandy [this message]
2002-11-19  3:57       ` Alexander Larsson
2002-11-19 12:47         ` Alexander Larsson
2002-11-20 21:43           ` Jim Blandy
2002-11-20 23:35             ` Alexander Larsson
2002-11-19  5:00   ` Jim Blandy
2002-11-18 22:11 ` Jim Blandy
2002-11-18 23:51   ` Alexander Larsson
2002-11-19  0:02     ` Ulrich Drepper
2002-11-19  3:47       ` Jim Blandy
2002-11-19  3:53         ` Alexander Larsson
2002-11-19  4:38           ` Jim Blandy
2002-11-24 20:28 ` Jim Blandy
2002-11-25  5:37   ` Alexander Larsson
2002-11-25  9:44     ` Jim Blandy

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=vt2el9hhkjs.fsf@zenia.red-bean.com \
    --to=jimb@redhat.com \
    --cc=alexl@redhat.com \
    --cc=gdb@sources.redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox