All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH] gcc: Fix build failure related to -fPIC for x86_64 -> i686 builds
@ 2017-04-12 21:09 Jan Kundrát
  0 siblings, 0 replies; 6+ messages in thread
From: Jan Kundrát @ 2017-04-12 21:09 UTC (permalink / raw)
  To: buildroot

Without this patch, I cannot build the toolchain (both host-gcc-initial
and -final) on Gentoo's amd64 using GCC 4.9.3:

  /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/../../../../x86_64-pc-linux-gnu/bin/ld:
  gcov.o: relocation R_X86_64_32 against `.rodata.str1.8' can not
  be used when making a shared object; recompile with -fPIC

According to the GCC mailing list, a similar problem [1] related to
libgccjit was fixed by passing --enable-host-shared. My failure doesn't
appear to have anything in common with libgccjit, but that configure
flag fixed my build as well.

I wonder if we actually need gcov in the first stage of a GCC build...

[1] https://gcc.gnu.org/ml/gcc-help/2016-03/msg00026.html

Signed-off-by: Jan Kundr?t <jan.kundrat@cesnet.cz>
---
 package/gcc/gcc.mk | 1 +
 1 file changed, 1 insertion(+)

diff --git a/package/gcc/gcc.mk b/package/gcc/gcc.mk
index b52f945..1e760d0 100644
--- a/package/gcc/gcc.mk
+++ b/package/gcc/gcc.mk
@@ -92,6 +92,7 @@ HOST_GCC_COMMON_CONF_OPTS = \
 	--with-gnu-ld \
 	--disable-libssp \
 	--disable-multilib \
+	--enable-host-shared \
 	--with-gmp=$(HOST_DIR)/usr \
 	--with-mpc=$(HOST_DIR)/usr \
 	--with-mpfr=$(HOST_DIR)/usr \
-- 
2.10.2

^ permalink raw reply related	[flat|nested] 6+ messages in thread
* [Buildroot] [PATCH] gcc: Fix build failure related to -fPIC for x86_64 -> i686 builds
@ 2017-04-19 16:23 Jan Kundrát
  2017-04-23 22:06 ` Arnout Vandecappelle
  0 siblings, 1 reply; 6+ messages in thread
From: Jan Kundrát @ 2017-04-19 16:23 UTC (permalink / raw)
  To: buildroot

> Without this patch, I cannot build the toolchain (both host-gcc-initial
> and -final) on Gentoo's amd64 using GCC 4.9.3:
>
>   
> /usr/lib/gcc/x86_64-pc-linux-gnu/4.9.3/../../../../x86_64-pc-linux-gnu/bin/ld:
>   gcov.o: relocation R_X86_64_32 against `.rodata.str1.8' can not
>   be used when making a shared object; recompile with -fPIC

One important piece I forgot to add -- I'm running "Hardened Gentoo GCC" 
which enables PIE by default [1] [2]. As such, this might explain why other 
are (presumably) not seeing this problem.

BTW, I cannot find my original submission on patchwork. Was that e-mail OK? 
I see it in the ML archive [3].

With kind regards,
Jan

[1] 
https://wiki.gentoo.org/wiki/Hardened/Toolchain#Automatic_generation_of_Position_Independent_Executables_.28PIEs.29
[2] 
https://wiki.gentoo.org/wiki/Hardened/Toolchain#Toolchain_modifications_for_automatic_PIEs
[3] http://lists.busybox.net/pipermail/buildroot/2017-April/189441.html

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2017-04-25 11:17 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-04-12 21:09 [Buildroot] [PATCH] gcc: Fix build failure related to -fPIC for x86_64 -> i686 builds Jan Kundrát
2017-04-19 16:23 Jan Kundrát
2017-04-23 22:06 ` Arnout Vandecappelle
2017-04-24 11:19   ` Jan Kundrát
2017-04-24 20:21     ` Arnout Vandecappelle
2017-04-25 11:17       ` Jan Kundrát

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.