From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: 103376,79d422601576e972 X-Google-Attributes: gid103376,domainid0,public,usenet X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news1.google.com!news2.google.com!newsfeed2.dallas1.level3.net!news.level3.com!newsfeed-00.mathworks.com!peer-uk.news.demon.net!kibo.news.demon.net!news.demon.co.uk!demon!not-for-mail From: Simon Wright Newsgroups: comp.lang.ada Subject: Re: AWS issue Date: Sun, 18 May 2008 21:46:14 +0100 Organization: Pushface Message-ID: References: <4830012E.1080504@bredband.net> <48301857.5090609@gmail.com> NNTP-Posting-Host: pogner.demon.co.uk Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: news.demon.co.uk 1211143574 28299 62.49.19.209 (18 May 2008 20:46:14 GMT) X-Complaints-To: abuse@demon.net NNTP-Posting-Date: Sun, 18 May 2008 20:46:14 +0000 (UTC) Cancel-Lock: sha1:2xHFJOF1gB23ED+o+P5pL2dHguE= User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.2 (darwin) Xref: g2news1.google.com comp.lang.ada:213 Date: 2008-05-18T21:46:14+01:00 List-Id: Sebastien Morand writes: > About addr2line, here is what I got: > $ addr2line -e hello_world 0x28188ac9 0x2818a535 0x2819196a 0x28183cac > 0x2819bd94 0x2819e324 0x804d184 0x804d022 0x804c987??:0 > ??:0 > ??:0 > ??:0 > ??:0 > ??:0 > /mnt/programs/opt/src/AWS-gpl-2.3.0/demos/hello_world.adb:43 > /mnt/programs/opt/src/AWS-gpl-2.3.0/.build/release/demos/obj/b~hello_world.adb:447 > ??:0 > > The problem is > /mnt/programs/opt/src/AWS-gpl-2.3.0/.build/release/demos/obj/b~hello_world.adb > does not exist :-) gnatmake would normally leave it there. This is the actual main program, constructed by gnatbind, which calls your main procedure. The useful exception point is hello_world.adb:43. The situation with having only a hex traceback is where our project is all the time on an embedded system (VxWorks): even if the addr2line code was available on the target, the symbolic traceback only works where you have access to the unstripped executable, and we don't have room for it on flash. So we keep the unstripped executable and run addr2line (actually a wrapper, powerpc-wrs-vxworks-vxaddr2line) on that. You do need to be careful with your config management, of course!