[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#431014: Why won't you ship /usr/bin/gcc-snapshot?



On 2011-12-31 14:00:04 -0600, Jonathan Nieder wrote:
> Vincent Lefevre wrote:
> 
> > At runtime? Do you mean that one needs to change the library path
> > also for running the generated executable?
> 
> Yes, gcc-snapshot includes a snapshot of libgcc (and libstdc++,
> libgcj, libobjc, etc).  So checking those libraries' behavior involves
> modifying the library path at runtime.

OK, I thought that the static version was used in such a case, but
I've now seen that the gcc doc (under -static-libgcc) says that it
is not always possible (in particular for C++ and Java).

Alternatively, couldn't /usr/lib/gcc-snapshot/lib be added to the
run path instead of having to use LD_LIBRARY_PATH? For instance,
having

  export LD_RUN_PATH=/usr/lib/gcc-snapshot/lib

in the gcc-snapshot wrapper seems to work (I've done tests with mksh).

Without this run path setting:

$ ldd mksh
        linux-vdso.so.1 =>  (0x00007fff829ff000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f159516a000)
        libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f1594f54000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f159550d000)

With this setting:

$ ldd mksh
        linux-vdso.so.1 =>  (0x00007fff69fff000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f85a6818000)
        libgcc_s.so.1 => /usr/lib/gcc-snapshot/lib/libgcc_s.so.1 (0x00007f85a6603000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f85a6bbb000)

without modifying LD_LIBRARY_PATH.

> From time to time the ABI can be bumped, which means the dependencies
> of generated executables need not always be satisfied by the ordinary
> copies of those libraries in /lib.

I also suppose that there may be incompatilibities if the software
compiled with gcc-snapshot is linked against libraries compiled with
normal GCC versions (if they both use libgcc).

> > The README.Debian file
> > doesn't say anything like that. According to the README.Debian
> > file, the wrapper is just what we need.
> 
> Good catch, thanks.  Can you suggest an improved wording?

Let's first see what you think about the run path...

-- 
Vincent Lefèvre <vincent@vinc17.net> - Web: <http://www.vinc17.net/>
100% accessible validated (X)HTML - Blog: <http://www.vinc17.net/blog/>
Work: CR INRIA - computer arithmetic / Arénaire project (LIP, ENS-Lyon)



Reply to: