[PATCH,ARM] Suppress the dynamic linker commands for statically linked programs
Richard Earnshaw
rearnsha@arm.com
Mon Sep 17 10:14:00 GMT 2012
On 14/09/12 21:34, Ben Cheng wrote:
> Hi,
>
> Recently we found out that the .interp section starts to show up in
> ARM executables compiled with "-shared -static" and the gold linker
> from binutils 2.22. We tracked down the origin of the dynamic linker
> commands and they are always explicitly specified in
> config/arm/linux-elf.h. We tested the following simple patch to
> suppress the dynamic linker options for statically linked programs on
> Android's AOSP tree. Everything builds fine and the unneeded .interp
> section is gone.
>
> Thanks,
> -Ben
>
> ==
>
> gcc/ChangeLog
> 2012-09-14 Ben Cheng <bccheng@google.com>
> * config/arm/linux-elf.h: Suppress the dynamic linker commands for
> statically linked programs.
>
> Index: config/arm/linux-elf.h
> ===================================================================
> --- config/arm/linux-elf.h (revision 191198)
> +++ config/arm/linux-elf.h (working copy)
> @@ -65,8 +65,9 @@
> %{static:-Bstatic} \
> %{shared:-shared} \
> %{symbolic:-Bsymbolic} \
> - %{rdynamic:-export-dynamic} \
> - -dynamic-linker " GNU_USER_DYNAMIC_LINKER " \
> + %{!static: \
> + %{rdynamic:-export-dynamic} \
> + -dynamic-linker " GNU_USER_DYNAMIC_LINKER "} \
> -X \
> %{mbig-endian:-EB} %{mlittle-endian:-EL}" \
> SUBTARGET_EXTRA_LINK_SPEC
>
OK.
R.
More information about the Gcc-patches
mailing list