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

Re: [Xen-devel] [XTF RFC PATCH] build: pass -no-pie to LDFLAGS



On Tue, Jan 31, 2017 at 01:22:42PM +0000, Wei Liu wrote:
> Starting from ee3e265688, $(CC) is used for linking. That means all
> default $(CC) flags coming from distro takes effect.
> 
> On Debian Stretch, gcc contains -pie by default, which makes the final
> object fail to link. We need to explicitly disable pie when linking.
> 
> Example error message:
> 
> /usr/bin/ld: /local/work/xtf.git/arch/x86/boot/head_pv64.o: relocation 
> R_X86_64_32S against symbol `start_info' can not be used when making a shared 
> object; recompile with -fPIC
> /usr/bin/ld: /local/work/xtf.git/arch/x86/entry_64-pv64.o: relocation 
> R_X86_64_32S against `.text' can not be used when making a shared object; 
> recompile with -fPIC
> /usr/bin/ld: final link failed: Nonrepresentable section on output
> collect2: error: ld returned 1 exit status
> 
> Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx>
> ---
>  build/common.mk | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/build/common.mk b/build/common.mk
> index 7c4870e..b89e133 100644
> --- a/build/common.mk
> +++ b/build/common.mk
> @@ -61,7 +61,7 @@ CFLAGS_$(1) := $$(CFLAGS_$($(1)_arch)) 
> $$(COMMON_CFLAGS-$(1)) -DCONFIG_ENV_$(1)
>  
>  link-$(1) := $(ROOT)/arch/x86/link-$(1).lds
>  
> -LDFLAGS_$(1) := -Wl,-T,$$(link-$(1)) -nostdlib
> +LDFLAGS_$(1) := -Wl,-T,$$(link-$(1)) -nostdlib -no-pie
>  

Eh, we definitely need something more sophisticated than this. We need
to detect if -pie is really supported by the compiler.

But before I spend more time on this, I would like to hear other
people's opinion.

Wei.

>  # Needs to pick up test-provided obj-perenv and obj-perarch
>  DEPS-$(1) = $(head-$(1)) \
> -- 
> 2.11.0
> 

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.