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

Re: [Minios-devel] [UNIKRAFT PATCH v3 0/2] Introduce LTO build option



Hi Wei,
this looks like a gcc bug...

I also faced this problem on my host machine with gcc 8.1.0. Gcc 7 works
just fine. Moreover, I tried an official docker from gcc:
  docker run -v $PWD:$PWD -it gcc:8 /bin/bash
And it worked too.

The thing is, we should not have any position independent objects. At
least it is not intended that way :). That's why this complains from gcc
is a little bit strange..

-Yuri.


Wei Chen <Wei.Chen@xxxxxxx> writes:

> Hi Simon,
>
> I am rebaseing my Arm64 KVM code to latest upstream. But I find this patch
> series make both Arm and x86_64 build failed. Even if after I selected the
> LTO option from menuconfig.
>
> X86_64 xen platform error:
> /usr/bin/x86_64-linux-gnu-ld: -r and -pie may not be used together
> collect2: error: ld returned 1 exit status
> /home/weic/WIP/unikraft/unikraft/support/build/Makefile.build:48: recipe for 
> target '/home/weic/WIP/unikraft/unikraft/build/libxenplat.ld.o' failed
> make[1]: *** [/home/weic/WIP/unikraft/unikraft/build/libxenplat.ld.o] Error 1
> Makefile:32: recipe for target '_all' failed
> make: *** [_all] Error 2
>
> arm64 kvm platform error:
> AS      libkvmplat: entry64.o
>   AS      libkvmplat: exceptions.o
>   AS      libkvmplat: pagetable.o
>   CC      libkvmplat: cpu_arm_64.o
>   CC      libkvmplat: setup.o
>   CC      libkvmplat: console.o
>   CC      libkvmplat: lcpu.o
>   CC      libkvmplat: time.o
>   CC      libkvmplat: shutdown.o
>   CC      libkvmplat: memory.o
>   LD      libkvmplat.ld.o
> /usr/bin/aarch64-linux-gnu-ld: -r and -pie may not be used together
> collect2: error: ld returned 1 exit status
> /root/UF/unikraft/support/build/Makefile.build:48: recipe for target 
> '/root/UF/unikraft/build/libkvmplat.ld.o' failed
> make: *** [/root/UF/unikraft/build/libkvmplat.ld.o] Error 1
>
> What did I miss in configuration?
>
> Regards,
> Wei Chen
>
>> -----Original Message-----
>> From: Minios-devel <minios-devel-bounces@xxxxxxxxxxxxxxxxxxxx> On Behalf Of
>> Simon Kuenzer
>> Sent: 2018年5月16日 20:57
>> To: minios-devel@xxxxxxxxxxxxx
>> Cc: Simon Kuenzer <simon.kuenzer@xxxxxxxxx>; sharan.santhanam@xxxxxxxxx
>> Subject: [Minios-devel] [UNIKRAFT PATCH v3 0/2] Introduce LTO build option
>>
>> This patch series introduces LTO as a build option.
>> For this purpose, GCC is used for linking which enables
>> code optimization during link time. When enabling this option
>> in the menu, smaller and more efficient images can be created.
>>
>> Changes since v2:
>>  - Use also GCC's wrapper for `nm` and `ar`: `gcc-nm` and `gcc-ar`
>>
>> Please note, by mistake v2 was the first version of this patch series.
>>
>> Simon Kuenzer (2):
>>   build: Use GCC replacements for `ld`, `ar`, and `nm`
>>   build: Provide LTO as build option
>>
>>  Config.uk             |  8 ++++++++
>>  Makefile              |  6 +++---
>>  Makefile.uk           | 14 ++++++++++----
>>  plat/kvm/Linker.uk    |  8 ++++----
>>  plat/linuxu/Linker.uk |  2 +-
>>  plat/xen/Linker.uk    | 16 ++++++++--------
>>  6 files changed, 34 insertions(+), 20 deletions(-)
>>
>> --
>> 2.7.4
>>
>>
>> _______________________________________________
>> Minios-devel mailing list
>> Minios-devel@xxxxxxxxxxxxxxxxxxxx
>> https://lists.xenproject.org/mailman/listinfo/minios-devel
> IMPORTANT NOTICE: The contents of this email and any attachments are 
> confidential and may also be privileged. If you are not the intended 
> recipient, please notify the sender immediately and do not disclose the 
> contents to any other person, use it for any purpose, or store or copy the 
> information in any medium. Thank you.
> _______________________________________________
> Minios-devel mailing list
> Minios-devel@xxxxxxxxxxxxxxxxxxxx
> https://lists.xenproject.org/mailman/listinfo/minios-devel

-- 
Yuri Volchkov
Software Specialist

NEC Europe Ltd
Kurfürsten-Anlage 36
D-69115 Heidelberg

_______________________________________________
Minios-devel mailing list
Minios-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/minios-devel

 


Rackspace

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