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 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: a07f3367d7,fea50f781bb229dc X-Google-Attributes: gida07f3367d7,public,usenet X-Google-NewGroupId: yes X-Google-Language: ENGLISH,UTF8 Path: g2news2.google.com!news4.google.com!feeder.news-service.com!85.214.198.2.MISMATCH!eternal-september.org!.POSTED!not-for-mail From: Ludovic Brenta Newsgroups: comp.lang.ada Subject: Re: About static libraries and Debian policy Date: Fri, 14 May 2010 22:38:30 +0200 Organization: A noiseless patient Spider Message-ID: <87d3wydxrt.fsf@ludovic-brenta.org> References: <85f51aeb-cac9-4591-921a-a7f50c8ef142@a21g2000yqn.googlegroups.com> <1pup1z7a4f1pq$.of30sejrqe4m.dlg@40tude.net> <87hbmae33k.fsf@ludovic-brenta.org> <1qlmof1bv2m4t.6suzc7ieyv1j$.dlg@40tude.net> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Date: Fri, 14 May 2010 20:38:30 +0000 (UTC) Injection-Info: mx03.eternal-september.org; posting-host="/mzWyyXLUrcvNJjegNdd9g"; logging-data="27718"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+O0MrUWP6SdnMdJ8EzENf8" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux) Cancel-Lock: sha1:W6HV2OhcVhu45BKdnMMGM+I/48w= sha1:rYLUjOZ4Rp3k53tMeps3eq51ne4= Xref: g2news2.google.com comp.lang.ada:11620 Date: 2010-05-14T22:38:30+02:00 List-Id: Dmitry A. Kazakov writes: > On Fri, 14 May 2010 20:43:27 +0200, Ludovic Brenta wrote: > >> ยง 5.3.3 Ada object files [...] >> Rule: The -dev package SHALL provide a static library in >> /usr/lib/libLIBRARY.a. > > OK. > >>>>> BTW, Why there should be no traceback when relocatable libraries are >>>>> used? >> >> Traceback is always available, either in symbolic or numeric form. To >> get the symbolic form, you need the -dbg package installed. > > I meant g-trasym.adb. In Fedora's gcc 4.4 it is in the static library, but > absent in the shared. I don't understand why. Maybe the Fedora maintainers can explain? >>> Maybe, but other shared libraries can well be compiled with -g as well >>> as the application. But linking them with shared RTL fails if any of >>> them uses Traceback.Symbolic. >> >> That's because GNAT GPL includes a non-standard 'libaddr2line.a' >> produced from binutils (and therefore pure GPL) and calls that to >> produce the symbolic tracebacks. GCC (from the FSF) lacks this library. >> I patched GCC to use an alternate mechanism instead, i.e. fork()/exec() >> and call /usr/bin/addr2line. This restores the functionality in the FSF >> version of GNAT. > > Does it mean that under Debian g-trasym.adb is in both libraries? Yes. And they Just Work(tm) as they should :) -- Ludovic Brenta.