Re: Error building OVMF on x86 macOS with Xcode 12.5


Andrew Fish
 

Rebecca,

I don’t think `-z` is a valid argument to ld64 (macOS linker). My guess is XCODE is inheriting a GCC flag from a platform DSC file. 

$ git grep "z common-page-size" -- *.dsc
OvmfPkg/OvmfPkgIa32.dsc:89:  GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
OvmfPkg/OvmfPkgIa32.dsc:97:  GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
OvmfPkg/OvmfPkgIa32X64.dsc:93:  GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
OvmfPkg/OvmfPkgIa32X64.dsc:101:  GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
OvmfPkg/OvmfPkgX64.dsc:93:  GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
OvmfPkg/OvmfPkgX64.dsc:101:  GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
OvmfPkg/OvmfXen.dsc:84:  GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
OvmfPkg/OvmfXen.dsc:92:  GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
StandaloneMmPkg/StandaloneMmPkg.dsc:116:GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000 -march=armv8-a+nofp -mstrict-align

Thanks,

Andrew Fish

On May 2, 2021, at 12:06 PM, Rebecca Cran <rebecca@...> wrote:

It doesn't seem to apply against
1e6b0394d6c001802dc454ecff19076aaa80f51c (master as of today):

patching file BaseTools/Source/Python/AutoGen/ModuleAutoGenHelper.py
Hunk #1 FAILED at 181.
Hunk #2 FAILED at 632.
2 out of 2 hunks FAILED -- saving rejects to file
BaseTools/Source/Python/AutoGen/ModuleAutoGenHelper.py.rej
patching file BaseTools/Source/Python/AutoGen/PlatformAutoGen.py
Hunk #1 FAILED at 1391.
Hunk #2 FAILED at 1534.
2 out of 2 hunks FAILED -- saving rejects to file
BaseTools/Source/Python/AutoGen/PlatformAutoGen.py.rej
patching file BaseTools/Source/Python/build/build.py
Hunk #1 FAILED at 897.
Hunk #2 FAILED at 930.
2 out of 2 hunks FAILED -- saving rejects to file
BaseTools/Source/Python/build/build.py.rej

-- 
Rebecca Cran

On 5/2/21 12:04 PM, Kinney, Michael D wrote:
Please try this patch:

https://edk2.groups.io/g/devel/message/74684

If it works, can you please also do a review?  Many community members are offline this week and I want to get these fixes in.

Mike

-----Original Message-----
From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Rebecca Cran
Sent: Saturday, May 1, 2021 9:05 PM
To: devel@edk2.groups.io; Andrew Fish <afish@...>; Laszlo Ersek <lersek@...>
Subject: [edk2-devel] Error building OVMF on x86 macOS with Xcode 12.5

I'm trying to build OVMF on an x86 Mac running Big Sur and Xcode 12.5.

If I run "./OvmfPkg/build.sh -a X64 -t XCODE5 -b RELEASE" it seems to
get quite far, but then tries to run ld with "-z common-page-size",
causing the error:


"ld" -arch x86_64 -u __ModuleEntryPoint -e __ModuleEntryPoint -preload
-segalign 0x20 -pie -all_load -dead_strip -seg1addr 0x240 -map
/Users/bcran/src/edk2/Build/OvmfX64/RELEASE_XCODE5/X64/MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterR
untimeDxe/DEBUG/MonotonicCounterRuntimeDxe.map
-z common-page-size=0x1000 -seg1addr 0x1000 -segalign 0x1000 -o
/Users/bcran/src/edk2/Build/OvmfX64/RELEASE_XCODE5/X64/MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterR
untimeDxe/DEBUG/MonotonicCounterRuntimeDxe.dll
-filelist
/Users/bcran/src/edk2/Build/OvmfX64/RELEASE_XCODE5/X64/MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterR
untimeDxe/OUTPUT/static_library_files.lst
Building ... /Users/bcran/src/edk2/UefiCpuPkg/CpuMpPei/CpuMpPei.inf [X64]
make: Nothing to be done for `tbuild'.
ld: unknown option: -z


--

Rebecca Cran











Join devel@edk2.groups.io to automatically receive all group messages.