workspace needs to be set to any value? 0 $ bash UefiPayloadPkg/UniversalPayloadBuild.sh -t GCC5 -a IA32 -a X64 -D CPU_TIMER_LIB_ENABLE=FALSE python_exe= Traceback (most recent call last): File "UefiPayloadPkg/UniversalPayloadBuild.py", line 172, in main() File "UefiPayloadPkg/UniversalPayloadBuild.py", line 168, in main BuildUniversalPayload(args, MacroList) File "UefiPayloadPkg/UniversalPayloadBuild.py", line 58, in BuildUniversalPayload BuildDir = os.path.join(os.environ['WORKSPACE'], os.path.normpath("Build/UefiPayloadPkgX64")) File "/usr/lib/python3.8/os.py", line 675, in __getitem__ raise KeyError(key) from None KeyError: 'WORKSPACE' *Thanks & RegardsRitul Guru+91-9916513186* On Mon, Feb 6, 2023 at 5:17 PM Guo, Gua wrote: > UniversalPayload.sh have Clang tool chain dependency. > > > > I assume your machine is ubuntu-20.10, please download it. And set use > export PATH=$PATH: to prevent the issue. > > > > > https://github.com/llvm/llvm-project/releases/download/llvmorg-11.1.0/clang+llvm-11.1.0-x86_64-linux-gnu-ubuntu-20.10.tar.xz > > > > Thanks, > > Gua > > > > *From:* ritul guru > *Sent:* Monday, February 6, 2023 7:37 PM > *To:* Guo, Gua > *Cc:* devel@edk2.groups.io; Mike Maslenkin > *Subject:* Re: [edk2-devel] regarding build uefipayload in debug mode in > linux > > > > Thanks, > > > > 17:05 $ ./UefiPayloadPkg/UniversalPayloadBuild.sh -t GCC5 -a IA32 -a X64 > -D CPU_TIMER_LIB_ENABLE=FALSE > python_exe=/usr/bin/python3.8 > "llvm-objcopy" --version > /bin/sh: 1: llvm-objcopy: not found > - Failed - error happened when run command: "llvm-objcopy" --version > - Failed - Please check if LLVM is installed or if CLANG_BIN is set > correctly > ✘-1 ~/src/opensource/edk2 [master ↓·22|✚ 1] > > > > > > I am seeing above errors, is clang required for UniversalPayloadBuild.sh > compilation? > > > > > > > > > > *Thanks & Regards Ritul Guru +91-9916513186* > > > > > > On Mon, Feb 6, 2023 at 6:23 AM Guo, Gua wrote: > > I just quickly check your command, look like it incorrect UefiPayload > > > > For Uefi Payload > > - build -p "UefiPayloadPkg/UefiPayloadPkg.dsc" -b DEBUG -t GCC5 -a > IA32 -a X64 -D BOOTLOADER=COREBOOT > > > > For Uefi Universal Payload > > - *Coreboot * > > git clone https://github.com/StarLabsLtd/coreboot.git Coreboot > > cd Coreboot > > git submodule update --init > > make iasl > > make crossgcc > > make defconfig KBUILD_DEFCONFIG=config.starlabs_qemu > > make > > > > - *Edk2* > > git clone https://github.com/tianocore/edk2.git Edk2 > > cd Edk2 > > git submodule update --init > > source ./edksetup.sh > > make -C ./BaseTools > > bash UefiPayloadPkg/UniversalPayloadBuild.sh -t GCC5 -a IA32 -D > CPU_TIMER_LIB_ENABLE=FALSE > > > > - *ShimLayer* > > git clone > https://github.com/UniversalScalableFirmware/upl.coreboot.shimlayer > ShimLayer > > cd ShimLayer > > bash CorebootShimBuild.sh > > > > - *Test Procedure* > > > 1. Copy "ShimLayer/Build/ShimLayer.elf" and > "Edk2/Build/UefiPayloadPkgX64/UniversalPayload.elf" to “Coreboot/build”. > > 2. cd Coreboot/build > > 3. Do the following commands. > > ./cbfstool coreboot.rom remove -r COREBOOT -n fallback/payload > > ./cbfstool coreboot.rom add-payload -r COREBOOT -n fallback/payload -f > ShimLayer.elf > > ./cbfstool coreboot.rom remove -r COREBOOT -n img/UniversalPayload > > ./cbfstool coreboot.rom add-flat-binary -r COREBOOT -n > img/UniversalPayload -f UniversalPayload.elf -l 0x200000 -e 0x100 -c lzma > > qemu-system-x86_64 -bios coreboot.rom -serial stdio -M q35 > > > > Thanks, > > Gua > > *From:* devel@edk2.groups.io *On Behalf Of *ritul > guru > *Sent:* Friday, February 3, 2023 11:08 PM > *To:* Mike Maslenkin > *Cc:* devel@edk2.groups.io > *Subject:* Re: [edk2-devel] regarding build uefipayload in debug mode in > linux > > > > Thanks, > > > > build -p "UefiPayloadPkg/UefiPayloadPkg.dsc" *-b DEBUG* -t GCC5 -a IA32 > -a X64 -D COREBOOT > > > > I used above cmd, added DEBUG option by seeing NO debug messages coming > from uefipayload. > > any idea how to enable debug messages coming from uefipayload built with > above cmd? > > > > > > > > > > > > *Thanks & Regards Ritul Guru +91-9916513186* > > > > > > On Fri, Feb 3, 2023 at 4:46 AM Mike Maslenkin > wrote: > > Hi Ritul Guru. > > There is a misprint in path to dsc file. > The path should be "UefiPayloadPkg/UefiPayloadPkg.dsc" > But there is another issue with your command line exists. > The instructions you are referred to [1] contain a sentence: > "NOTE: Pure 32bit UEFI payload support could be added if required > later.", i.e. it won't build. > So, you need to build either pure X64 or X64 build with IA32 entry. > > The command line for the latter is: > "build -p UefiPayloadPkg/UefiPayloadPkg.dsc -t GCC5 -a IA32 -a X64" > > *[1] > https://github.com/tianocore/edk2/blob/master/UefiPayloadPkg/BuildAndIntegrationInstructions.txt#L55 > > Regards, > Mike. > > > > On Fri, Feb 3, 2023 at 1:37 AM ritul guru wrote: > > > > > > Hi, > > I was following below link to build UEfiPayload for coreboot to boot > from, > > > > > https://github.com/tianocore/edk2/blob/master/UefiPayloadPkg/BuildAndIntegrationInstructions.txt > > > > but getting below error, > > would appreciate help, thanks. > > > > > > ~/src/opensource/edk2 [master| ] > > 03:04 $ build -p UefiPayloadPkg\UefiPayloadPkg.dsc -t GCC5 -a IA32 > > Build environment: > Linux-5.10.102.1-microsoft-standard-WSL2-x86_64-with-glibc2.29 > > Build start time: 03:04:57, Feb.03 2023 > > > > WORKSPACE = /home//src/opensource/edk2 > > EDK_TOOLS_PATH = /home//src/opensource/edk2/BaseTools > > CONF_PATH = /home//src/opensource/edk2/Conf > > PYTHON_COMMAND = /usr/bin/python3.8 > > > > > > build.py... > > : error C0DE: Unknown fatal error when processing > [/home//src/opensource/edk2/UefiPayloadPkgUefiPayloadPkg.dsc] > > > > (Please send email to devel@edk2.groups.io for help, attaching > following call stack trace!) > > > > (Python 3.8.10 on linux) Traceback (most recent call last): > > File > "/home//src/opensource/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", > line 2692, in Main > > MyBuild = Build(Target, Workspace, Option,LogQ) > > File > "/home//src/opensource/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", > line 815, in __init__ > > self.InitPreBuild() > > File > "/home//src/opensource/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", > line 1015, in InitPreBuild > > self.LoadConfiguration() > > File > "/home//src/opensource/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", > line 971, in LoadConfiguration > > self.GetToolChainAndFamilyFromDsc (self.PlatformFile) > > File > "/home//src/opensource/edk2/BaseTools/BinWrappers/PosixLike/../../Source/Python/build/build.py", > line 905, in GetToolChainAndFamilyFromDsc > > dscobj = self.BuildDatabase[File, BuildArch] > > File > "/home//src/opensource/edk2/BaseTools/Source/Python/Workspace/WorkspaceDatabase.py", > line 104, in __getitem__ > > BuildObject = self.CreateBuildObject(FilePath, Arch, Target, > Toolchain) > > File > "/home//src/opensource/edk2/BaseTools/Source/Python/Workspace/WorkspaceDatabase.py", > line 120, in CreateBuildObject > > MetaFileStorage(self.WorkspaceDb, FilePath, FileType) > > File > "/home//src/opensource/edk2/BaseTools/Source/Python/Workspace/MetaFileTable.py", > line 426, in __new__ > > reval = Class._FILE_TABLE_[FileType](*Args) > > File > "/home//src/opensource/edk2/BaseTools/Source/Python/Workspace/MetaFileTable.py", > line 303, in __init__ > > MetaFileTable.__init__(self, Cursor, MetaFile, MODEL_FILE_DSC, > Temporary, FromItem) > > File > "/home//src/opensource/edk2/BaseTools/Source/Python/Workspace/MetaFileTable.py", > line 39, in __init__ > > MetaFile.TimeStamp, > > File > "/home//src/opensource/edk2/BaseTools/Source/Python/Common/Misc.py", line > 1539, in TimeStamp > > return os.stat(self.Path)[8] > > File > "/home//src/opensource/edk2/BaseTools/Source/Python/Common/LongFilePathOs.py", > line 51, in stat > > return os.stat(LongFilePath(path)) > > FileNotFoundError: [Errno 2] No such file or directory: > '/home//src/opensource/edk2/UefiPayloadPkgUefiPayloadPkg.dsc' > > > > > > > > > > > > Thanks & Regards > > Ritul Guru > > +91-9916513186 > > > >