Displaying 4 results from an estimated 4 matches for "basetools".
2019 Jan 28
4
lld write wrong symbol value in .data section if enable -pie
...still fail to enable the lld in my Uefi firmware build to replace ld, and I found it is related to the wrong symbol values in the .data section, which are pointed by R_X86_64_64 relocation entries. I need your advices.
My firmware uses a linker script https://github.com/tianocore/edk2/blob/master/BaseTools/Scripts/GccBase.lds to do the linking. We use position independent code with hidden visibility to inform the compiler that symbol references are never resolved at runtime. My problem is I found after the lld linking with -pie enabled, the symbol values in .data section, which have the R_X86_64_64 r...
2019 Jan 29
3
lld write wrong symbol value in .data section if enable -pie
...leg-virt-tianocore-edk2-upstream/configure. Uefi firmware have many open source developers who like ELF format toolchains …
Yes, Uefi firmware application/driver are PE/COFF format. So for ELF format object file, we have a tool to convert ELF to COFF: https://github.com/tianocore/edk2/tree/master/BaseTools/Source/C/GenFw. Our convert tool cannot handle complex relocation types, like GOT based. That’s why we use the symbol hidden visibility, LTO and other options to let gcc/clang not emit complex relocation.
Thanks
Steven Shi
Intel\SSG\FID\Firmware Infrastructure
From: Rui Ueyama [mailto:ruiu at...
2019 Jan 29
2
lld write wrong symbol value in .data section if enable -pie
...leg-virt-tianocore-edk2-upstream/configure. Uefi firmware have many open source developers who like ELF format toolchains …
Yes, Uefi firmware application/driver are PE/COFF format. So for ELF format object file, we have a tool to convert ELF to COFF: https://github.com/tianocore/edk2/tree/master/BaseTools/Source/C/GenFw. Our convert tool cannot handle complex relocation types, like GOT based. That’s why we use the symbol hidden visibility, LTO and other options to let gcc/clang not emit complex relocation.
Thanks
Steven Shi
Intel\SSG\FID\Firmware Infrastructure
From: Rui Ueyama [mailto:ruiu at...
2012 Nov 26
0
How to set GCC version for ovmf compilation
...velopment library
I am using a Ubuntu guantal with recompiled binutils to include all targets. But is should not have any effect. The problem is that I cannot set the gcc version for OVMF to say 4.6 which should do the job fine.
Hope someone has a workaround. However, it might be best to make the BaseTools for EDK2 (OVMF) on in the make routine instead of relying on a precompiled set.
Best regards Kristian Hagsted Rasmussen