comp.lang.ada
 help / color / mirror / Atom feed
* Using Gnat.Traceback.Symbolic with gcc-3.4.3
@ 2005-03-06 12:35 Bernd Trog
  2005-03-06 13:39 ` Ludovic Brenta
  0 siblings, 1 reply; 3+ messages in thread
From: Bernd Trog @ 2005-03-06 12:35 UTC (permalink / raw)


Hi,
whats the story about this addr2line problem?

With gcc-3.4.3 I get:

$ gnatmake -O3 -gnatf -gnatwu -gnato -funwind-tables \
  testexception.adb -g -f -largs -g -i -laddr2line -bargs -E
gcc -c -O3 -gnatf -gnatwu -gnato -funwind-tables -g testexception.adb
gnatbind -x testexception.ali
gnatlink testexception.ali -g -g -i -laddr2line
/usr/local/bin/ld: cannot find -laddr2line

I'm using binutils-2.15 (on i686 Linux).

How do I tell binutils to generate a 'libaddr2line.a' for me, that 
works with gcc-3.4.3?



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Using Gnat.Traceback.Symbolic with gcc-3.4.3
  2005-03-06 12:35 Using Gnat.Traceback.Symbolic with gcc-3.4.3 Bernd Trog
@ 2005-03-06 13:39 ` Ludovic Brenta
  2005-03-06 21:56   ` Florian Weimer
  0 siblings, 1 reply; 3+ messages in thread
From: Ludovic Brenta @ 2005-03-06 13:39 UTC (permalink / raw)


 (Bernd Trog) writes:
> Hi,
> whats the story about this addr2line problem?
>
> With gcc-3.4.3 I get:
>
> $ gnatmake -O3 -gnatf -gnatwu -gnato -funwind-tables \
>   testexception.adb -g -f -largs -g -i -laddr2line -bargs -E
> gcc -c -O3 -gnatf -gnatwu -gnato -funwind-tables -g testexception.adb
> gnatbind -x testexception.ali
> gnatlink testexception.ali -g -g -i -laddr2line
> /usr/local/bin/ld: cannot find -laddr2line
>
> I'm using binutils-2.15 (on i686 Linux).
>
> How do I tell binutils to generate a 'libaddr2line.a' for me, that 
> works with gcc-3.4.3?

libaddr2line.a is a library normally built from the binutils source
distribution.  GNAT relies on it for sumbolic traceback of exceptions.
Unfortunately, I am not aware of any binary distribution of GNU/Linux
that ships libaddr2line.a.  I am not even sure that recent versions of
binutils (as required by recent versions of GCC) support building
libaddr2line.a.

If you're interested, AdaCore's binary distribution of GNAT 3.15p does
include this library (from binutils-2.9.1), and does support symbolic
tracebacks.

-- 
Ludovic Brenta.



^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Using Gnat.Traceback.Symbolic with gcc-3.4.3
  2005-03-06 13:39 ` Ludovic Brenta
@ 2005-03-06 21:56   ` Florian Weimer
  0 siblings, 0 replies; 3+ messages in thread
From: Florian Weimer @ 2005-03-06 21:56 UTC (permalink / raw)


* Ludovic Brenta:

> libaddr2line.a is a library normally built from the binutils source
> distribution.  GNAT relies on it for sumbolic traceback of exceptions.
> Unfortunately, I am not aware of any binary distribution of GNU/Linux
> that ships libaddr2line.a.  I am not even sure that recent versions of
> binutils (as required by recent versions of GCC) support building
> libaddr2line.a.

IIRC, libaddr2line has never been part of the official binutils, and
it's source code has not been released (probably by accident, but
still).

J�rgen Pfeifer wrote GNAT patches that invoke /usr/bin/addr2line to
resolve the addresses.  This approach avoids the dependency on the BFD
library and is cleaner.  Of course, it's a bit slower.

I'm not sure what the Java front end does.  This code should probably
be reused.



^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2005-03-06 21:56 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-03-06 12:35 Using Gnat.Traceback.Symbolic with gcc-3.4.3 Bernd Trog
2005-03-06 13:39 ` Ludovic Brenta
2005-03-06 21:56   ` Florian Weimer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox