While the RELEASE build of OvmfPkgX64 works fine, the DEBUG build is failing 
with undefined symbols AsmCpuid etc. when building on my FreeBSD 13-CURRENT 
system.
I’m trying to build git revision 559a07d84e5af3db09ae91844e4cb924b8f60668 (from 
Thu Dec 13 16:48:44 2018 -0700).
I’m building with gcc 7.4, running the command:

build -p OvmfPkg/OvmfPkgX64.dsc -t GCC5 -b DEBUG -a X64

The last few lines of output are:


"gcc" -o 
/home/bcran/workspace/edk2/Build/OvmfX64/DEBUG_GCC5/X64/IntelFrameworkModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2keyboardDxe/DEBUG/Ps2KeyboardDxe.dll
 -nostdlib -Wl,-n,-q,--gc-sections -z common-page-size=0x40 
-Wl,--entry,_ModuleEntryPoint -u _ModuleEntryPoint 
-Wl,-Map,/home/bcran/workspace/edk2/Build/OvmfX64/DEBUG_GCC5/X64/IntelFrameworkModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2keyboardDxe/DEBUG/Ps2KeyboardDxe.map,--whole-archive
 -Wl,-melf_x86_64,--oformat=elf64-x86-64,-pie -flto -Os 
-Wl,--start-group,@/home/bcran/workspace/edk2/Build/OvmfX64/DEBUG_GCC5/X64/IntelFrameworkModulePkg/Bus/Isa/Ps2KeyboardDxe/Ps2keyboardDxe/OUTPUT/static_library_files.lst,--end-group
 -g -fshort-wchar -fno-builtin -fno-strict-aliasing -Wall -Werror 
-Wno-array-bounds -ffunction-sections -fdata-sections -include AutoGen.h 
-fno-common -DSTRING_ARRAY_NAME=Ps2KeyboardDxeStrings -m64 -fno-stack-protector 
"-DEFIAPI=__attribute__((ms_abi))" -maccumulate-outgoing-args -mno-red-zone 
-Wno-address -mcmodel=small -fpie -fno-asynchronous-unwind-tables -Wno-address 
-flto -DUSING_LTO -Os -mno-mmx -mno-sse -D DISABLE_NEW_DEPRECATED_INTERFACES 
-Wl,--defsym=PECOFF_HEADER_SIZE=0x228 
-Wl,--script=/home/bcran/workspace/edk2/BaseTools/Scripts/GccBase.lds -Wno-error
Building ... /home/bcran/workspace/edk2/PcAtChipsetPkg/IsaAcpiDxe/IsaAcpi.inf 
[X64]
make: Nothing to be done for 'tbuild'.
Building ... 
/home/bcran/workspace/edk2/MdeModulePkg/Library/FrameBufferBltLib/FrameBufferBltLib.inf
 [X64]
Building ... 
/home/bcran/workspace/edk2/MdeModulePkg/Universal/MemoryTest/NullMemoryTestDxe/NullMemoryTestDxe.inf
 [X64]
make: Nothing to be done for 'tbuild'.
make: Nothing to be done for 'tbuild'.
make: Nothing to be done for 'tbuild'.
Building ... 
/home/bcran/workspace/edk2/MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf
 [X64]
/tmp//ccVNNewx.ltrans0.ltrans.o: In function `GetMemEncryptionAddressMask':
Building ... 
/home/bcran/workspace/edk2/MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
 [X64]
/home/bcran/workspace/edk2/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.c:57:
 undefined reference to `AsmCpuid'
/tmp//ccVNNewx.ltrans0.ltrans.o: In function 
`WriteBackInvalidateDataCacheRange':
/home/bcran/workspace/edk2/MdePkg/Library/BaseCacheMaintenanceLib/X86Cache.c:141:
 undefined reference to `AsmCpuid'
/home/bcran/workspace/edk2/MdePkg/Library/BaseCacheMaintenanceLib/X86Cache.c:143:
 undefined reference to `AsmWbinvd'
/home/bcran/workspace/edk2/MdePkg/Library/BaseCacheMaintenanceLib/X86Cache.c:160:
 undefined reference to `AsmFlushCacheLine'
make: Nothing to be done for 'tbuild'.
/tmp//ccVNNewx.ltrans0.ltrans.o: In function `IsReadOnlyPageWriteProtected':
make: Nothing to be done for 'tbuild'.
/home/bcran/workspace/edk2/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.c:521:
 undefined reference to `AsmReadCr0'
/tmp//ccVNNewx.ltrans0.ltrans.o: In function `DisableReadOnlyPageWriteProtect':
/home/bcran/workspace/edk2/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.c:534:
 undefined reference to `AsmReadCr0'
Building ... 
/home/bcran/workspace/edk2/MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpressDxe.inf 
[X64]
/home/bcran/workspace/edk2/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.c:534:
 undefined reference to `AsmWriteCr0'
/tmp//ccVNNewx.ltrans0.ltrans.o: In function `SetMemoryEncDec':
/home/bcran/workspace/edk2/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.c:655:
 undefined reference to `AsmReadCr3'
/tmp//ccVNNewx.ltrans0.ltrans.o: In function `EnableReadOnlyPageWriteProtect':
/home/bcran/workspace/edk2/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.c:545:
 undefined reference to `AsmReadCr0'
/home/bcran/workspace/edk2/OvmfPkg/Library/BaseMemEncryptSevLib/X64/VirtualMemory.c:545:
 undefined reference to `AsmWriteCr0'
/tmp//ccVNNewx.ltrans0.ltrans.o: In function `InternalMemEncryptSevIsEnabled':
/home/bcran/workspace/edk2/OvmfPkg/Library/BaseMemEncryptSevLib/MemEncryptSevLibInternal.c:52:
 undefined reference to `AsmCpuid'
/home/bcran/workspace/edk2/OvmfPkg/Library/BaseMemEncryptSevLib/MemEncryptSevLibInternal.c:57:
 undefined reference to `AsmCpuid'
/tmp//ccVNNewx.ltrans0.ltrans.o: In function `AsmReadMsr32':
/home/bcran/workspace/edk2/MdePkg/Library/BaseLib/X86Msr.c:39: undefined 
reference to `AsmReadMsr64'
collect2: error: ld returned 1 exit status
make: *** [GNUmakefile:397: 
/home/bcran/workspace/edk2/Build/OvmfX64/DEBUG_GCC5/X64/OvmfPkg/AmdSevDxe/AmdSevDxe/DEBUG/AmdSevDxe.dll]
 Error 1


— 
Rebecca
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to