[Bug middle-end/83074] Shared object built with `-pie --coverage' hangs forever
stvar at yahoo dot com
gcc-bugzilla@gcc.gnu.org
Wed Nov 22 20:23:00 GMT 2017
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83074
--- Comment #7 from Stefan Vargyas <stvar at yahoo dot com> ---
>
> libc.so.6 is a shared library, not a PIE. It is normally linked with -shared,
> just arranged to have .interp section and a meaningful e_entry in Ehdr.
> PIE is something significantly different, in particular it is the executable,
> albeit position independent, e.g. required to be the first in symbol search
> scope so that its symbols bind locally.
>
Jakub, thank you very much for your deeply insightful info.
I should have had a look at glibc prior to using the `-pie' hackery
for to achive the desired result of running 'foo.so' by itself.
The right solution (at least on GNU/Linux ELF platforms) is to rely on
`-shared', `-Wl,--entry' and a proper '.interp' section in the ELF file
built. (E.g. one cannot get rid of the issues seen above implied by
'__libc_csu_{init,fini}'.)
More information about the Gcc-bugs
mailing list