[edk2-devel] regarding build uefipayload in debug mode in linux

ritul guru ritul.bits at gmail.com
Mon Feb 6 14:21:49 UTC 2023


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 <module>
    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 <gua.guo at intel.com> 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:<Clang bin 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 <ritul.bits at gmail.com>
> *Sent:* Monday, February 6, 2023 7:37 PM
> *To:* Guo, Gua <gua.guo at intel.com>
> *Cc:* devel at edk2.groups.io; Mike Maslenkin <mike.maslenkin at gmail.com>
> *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 <gua.guo at intel.com> 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 at edk2.groups.io <devel at edk2.groups.io> *On Behalf Of *ritul
> guru
> *Sent:* Friday, February 3, 2023 11:08 PM
> *To:* Mike Maslenkin <mike.maslenkin at gmail.com>
> *Cc:* devel at 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 <mike.maslenkin at gmail.com>
> 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 <ritul.bits at gmail.com> 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 at 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
>
> 
>
>


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#99666): https://edk2.groups.io/g/devel/message/99666
Mute This Topic: https://groups.io/mt/96711480/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/edk2-devel-archive/attachments/20230206/4cd9e8ee/attachment-0001.htm>


More information about the edk2-devel-archive mailing list