On Wed, May 24, 2017 at 03:27:07PM -0700, Ard Biesheuvel wrote:
> On 24 May 2017 at 13:26, dann frazier <[email protected]> wrote:
> > v2:
> > * Replace -no-pie w/ -static for compat with GCC 4.9
> >
> 
> For my understanding, could you elaborate on what goes wrong if you
> omit -static / -no-pie?

Well, nothing... now :) -static/-no-pie was avoiding an issue with GenFw:

   -----------
"GenFw" -e SEC -o 
/tmp/edk2/Build/ArmVirtQemu-AARCH64/DEBUG_GCC49/AARCH64/ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore/DEBUG/ArmPlatformPrePeiCore.efi
 
/tmp/edk2/Build/ArmVirtQemu-AARCH64/DEBUG_GCC49/AARCH64/ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore/DEBUG/ArmPlatformPrePeiCore.dll
GenFw: ERROR 3000: Invalid
  WriteSections64():
  
/tmp/edk2/Build/ArmVirtQemu-AARCH64/DEBUG_GCC49/AARCH64/ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore/DEBUG/ArmPlatformPrePeiCore.dll
  AARCH64 small code model requires identical ELF and PE/COFF section
  offsets modulo 4 KB.
[...]
   -----------

Upon rebase/retest, I found that this was no longer reproducible.
Bisection shows that the problem went away recently after this commit:

commit 00b00cc57bfe0fca54c904d4dd44a263e243c88b
Author: Ard Biesheuvel <[email protected]>
Date:   Fri May 19 11:47:40 2017 +0100

    BaseTools/Scripts: discard .gnu.hash section in GCC builds

-*f*no-pie does still seem to be needed though. Without it, the ARM
build fails with:

   -----------
"GenFw" -e DXE_DRIVER -o 
/tmp/edk2/Build/ArmVirtQemu-ARM/DEBUG_GCC49/ARM/MdeModulePkg/Universal/Network/DpcDxe/DpcDxe/DEBUG/DpcDxe.efi
 
/tmp/edk2/Build/ArmVirtQemu-ARM/DEBUG_GCC49/ARM/MdeModulePkg/Universal/Network/DpcDxe/DpcDxe/DEBUG/DpcDxe.dll
GenFw: ERROR 3000: Invalid
  
/tmp/edk2/Build/ArmVirtQemu-ARM/DEBUG_GCC49/ARM/MdeModulePkg/Universal/Network/DpcDxe/DpcDxe/DEBUG/DpcDxe.dll:
 Bad definition for symbol '_GLOBAL_OFFSET_TABLE_'@0x5e94 or unsupported symbol 
type.  For example, absolute and undefined symbols are not supported.
   -----------

  -dann
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to