From: ritul guru <ritul.bits@gmail.com>
To: "Guo, Gua" <gua.guo@intel.com>
Cc: "devel@edk2.groups.io" <devel@edk2.groups.io>,
Mike Maslenkin <mike.maslenkin@gmail.com>
Subject: Re: [edk2-devel] regarding build uefipayload in debug mode in linux
Date: Mon, 6 Feb 2023 22:21:00 +0530 [thread overview]
Message-ID: <CAHHF-2+sLYkyj-h8EqeU_E24DswQVh-L69WH5uFpoUiBQ1yqog@mail.gmail.com> (raw)
In-Reply-To: <BL1PR11MB54781BC926CB2C5874BDA75DEFDA9@BL1PR11MB5478.namprd11.prod.outlook.com>
[-- Attachment #1: Type: text/plain, Size: 16098 bytes --]
PATH=$PATH:/usr/bin/clang
yes, set it as above.
*Thanks & RegardsRitul Guru+91-9916513186*
On Mon, Feb 6, 2023 at 8:43 PM Guo, Gua <gua.guo@intel.com> wrote:
> Do you set clang bin path ?
>
>
>
> *From:* ritul guru <ritul.bits@gmail.com>
> *Sent:* Monday, February 6, 2023 11:12 PM
> *To:* Guo, Gua <gua.guo@intel.com>
> *Cc:* devel@edk2.groups.io; Mike Maslenkin <mike.maslenkin@gmail.com>
> *Subject:* Re: [edk2-devel] regarding build uefipayload in debug mode in
> linux
>
>
>
> getting below error:
>
>
>
> build -p UefiPayloadPkg/UefiPayloadPkg.dsc -b DEBUG -a IA32 -a X64 -m
> UefiPayloadPkg/UefiPayloadEntry/UniversalPayloadEntry.inf -t CLANGDWARF -y
> /home/a/src/opensource/edk2/Build/UefiPayloadPkgX64/UefiUniversalPayloadEntry.txt
> -D UNIVERSAL_PAYLOAD=TRUE -D CPU_TIMER_LIB_ENABLE=FALSE
> Build environment:
> Linux-5.10.102.1-microsoft-standard-WSL2-x86_64-with-glibc2.29
> Build start time: 20:37:47, Feb.06 2023
>
> WORKSPACE = /home/a/src/opensource/edk2
> EDK_TOOLS_PATH = /home/a/src/opensource/edk2/BaseTools
> CONF_PATH = /home/a/src/opensource/edk2/Conf
> PYTHON_COMMAND = /usr/bin/python3.8
>
>
> Processing meta-data .
> Architecture(s) = IA32 X64
> Build target = DEBUG
> Toolchain = CLANGDWARF
>
> Active Platform =
> /home/a/src/opensource/edk2/UefiPayloadPkg/UefiPayloadPkg.dsc
> Active Module =
> /home/a/src/opensource/edk2/UefiPayloadPkg/UefiPayloadEntry/UniversalPayloadEntry.inf
> .build: : warning: The PCD was not specified by any INF module in the
> platform for the given architecture.
> PCD: [gPcAtChipsetPkgTokenSpaceGuid.PcdRtcIndexRegister]
> Platform: [UefiPayloadPkg.dsc]
> Arch: ['IA32']
> build: : warning: The PCD was not specified by any INF module in the
> platform for the given architecture.
> PCD: [gPcAtChipsetPkgTokenSpaceGuid.PcdRtcTargetRegister]
> Platform: [UefiPayloadPkg.dsc]
> Arch: ['IA32']
> done!
> Generating code . done!
> Generating makefile . done!
> Building ...
> /home/a/src/opensource/edk2/UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf
> [IA32]
> "clang" -g -Os -fshort-wchar -fno-builtin -fno-strict-aliasing -Wall
> -Werror -Wno-array-bounds -include AutoGen.h -fno-common
> -ffunction-sections -fdata-sections
> -DSTRING_ARRAY_NAME=BaseUefiCpuLibStrings -Wno-parentheses-equality
> -Wno-tautological-compare -Wno-tautological-constant-out-of-range-compare
> -Wno-empty-body -Wno-unused-const-variable -Wno-varargs
> -Wno-unknown-warning-option -Wno-unused-but-set-variable
> -Wno-unused-const-variable -Wno-unaligned-access -fno-stack-protector
> -mms-bitfields -Wno-address -Wno-shift-negative-value -Wno-unknown-pragmas
> -Wno-incompatible-library-redeclaration -fno-asynchronous-unwind-tables
> -mno-sse -mno-mmx -msoft-float -mno-implicit-float
> -ftrap-function=undefined_behavior_has_been_optimized_away_by_clang
> -funsigned-char -fno-ms-extensions -Wno-null-dereference -m32 -Oz -flto
> -march=i586 -target i686-pc-linux-gnu -g -malign-double -D
> DISABLE_NEW_DEPRECATED_INTERFACES -c -o
> /home/a/src/opensource/edk2/Build/UefiPayloadPkgX64/DEBUG_CLANGDWARF/IA32/UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib/OUTPUT/./BaseUefiCpuLib.obj
> -I/home/a/src/opensource/edk2/UefiCpuPkg/Library/BaseUefiCpuLib/Ia32
> -I/home/a/src/opensource/edk2/UefiCpuPkg/Library/BaseUefiCpuLib
> -I/home/a/src/opensource/edk2/Build/UefiPayloadPkgX64/DEBUG_CLANGDWARF/IA32/UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib/DEBUG
> -I/home/a/src/opensource/edk2/MdePkg
> -I/home/a/src/opensource/edk2/MdePkg/Include
> -I/home/a/src/opensource/edk2/MdePkg/Test/UnitTest/Include
> -I/home/a/src/opensource/edk2/MdePkg/Include/Ia32
> -I/home/a/src/opensource/edk2/UefiCpuPkg
> -I/home/a/src/opensource/edk2/UefiCpuPkg/Include
> /home/a/src/opensource/edk2/UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.c
> /bin/sh: 1: clang: not found
> make: *** [GNUmakefile:344:
> /home/a/src/opensource/edk2/Build/UefiPayloadPkgX64/DEBUG_CLANGDWARF/IA32/UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib/OUTPUT/BaseUefiCpuLib.obj]
> Error 127
>
>
> build.py...
> : error 7000: Failed to execute command
> make tbuild
> [/home/a/src/opensource/edk2/Build/UefiPayloadPkgX64/DEBUG_CLANGDWARF/IA32/UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib]
>
>
> build.py...
> : error F002: Failed to build module
> /home/a/src/opensource/edk2/UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf
> [IA32, CLANGDWARF, DEBUG]
>
> - Failed -
> Build end time: 20:37:54, Feb.06 2023
> Build total time: 00:00:07
>
> - Failed - error happened when run command: build -p
> UefiPayloadPkg/UefiPayloadPkg.dsc -b DEBUG -a IA32 -a X64 -m
> UefiPayloadPkg/UefiPayloadEntry/UniversalPayloadEntry.inf -t CLANGDWARF -y
> /home/a/src/opensource/edk2/Build/UefiPayloadPkgX64/UefiUniversalPayloadEntry.txt
> -D UNIVERSAL_PAYLOAD=TRUE -D CPU_TIMER_LIB_ENABLE=FALSE
> 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 108, in
> BuildUniversalPayload
> RunCommand(BuildModule)
> File "UefiPayloadPkg/UniversalPayloadBuild.py", line 51, in RunCommand
> raise Exception("ERROR: when run command: %s"%cmd)
> Exception: ERROR: when run command: build -p
> UefiPayloadPkg/UefiPayloadPkg.dsc -b DEBUG -a IA32 -a X64 -m
> UefiPayloadPkg/UefiPayloadEntry/UniversalPayloadEntry.inf -t CLANGDWARF -y
> /home/a/src/opensource/edk2/Build/UefiPayloadPkgX64/UefiUniversalPayloadEntry.txt
> -D UNIVERSAL_PAYLOAD=TRUE -D CPU_TIMER_LIB_ENABLE=FALSE
>
>
>
>
>
>
>
> *Thanks & Regards Ritul Guru +91-9916513186*
>
>
>
>
>
> On Mon, Feb 6, 2023 at 8:23 PM ritul guru <ritul.bits@gmail.com> wrote:
>
> thanks,
>
>
>
> ./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
>
>
>
> with above commands, we can inject shim.elf and uefipayload.elf into
> coreboot image, and should be able to boot from this payload?
>
>
>
>
>
> *Thanks & Regards Ritul Guru +91-9916513186*
>
>
>
>
>
> On Mon, Feb 6, 2023 at 7:56 PM Guo, Gua <gua.guo@intel.com> wrote:
>
> I think you can run “. edksetup.sh” in your local and WORKSPACE will be
> setup automatically.
>
>
>
> *From:* ritul guru <ritul.bits@gmail.com>
> *Sent:* Monday, February 6, 2023 10:22 PM
> *To:* Guo, Gua <gua.guo@intel.com>
> *Cc:* devel@edk2.groups.io; Mike Maslenkin <mike.maslenkin@gmail.com>
> *Subject:* Re: [edk2-devel] regarding build uefipayload in debug mode in
> linux
>
>
>
> 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 & Regards Ritul Guru +91-9916513186*
>
>
>
>
>
> On Mon, Feb 6, 2023 at 5:17 PM Guo, Gua <gua.guo@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@gmail.com>
> *Sent:* Monday, February 6, 2023 7:37 PM
> *To:* Guo, Gua <gua.guo@intel.com>
> *Cc:* devel@edk2.groups.io; Mike Maslenkin <mike.maslenkin@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@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@edk2.groups.io <devel@edk2.groups.io> *On Behalf Of *ritul
> guru
> *Sent:* Friday, February 3, 2023 11:08 PM
> *To:* Mike Maslenkin <mike.maslenkin@gmail.com>
> *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 <mike.maslenkin@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@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@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
>
>
>
>
[-- Attachment #2: Type: text/html, Size: 32450 bytes --]
next prev parent reply other threads:[~2023-02-06 16:51 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-02 21:39 regarding build uefipayload in debug mode in linux ritul guru
2023-02-02 23:16 ` [edk2-devel] " Mike Maslenkin
2023-02-03 15:07 ` ritul guru
2023-02-06 0:53 ` Guo, Gua
2023-02-06 11:37 ` ritul guru
2023-02-06 11:47 ` Guo, Gua
2023-02-06 14:21 ` ritul guru
2023-02-06 14:26 ` Guo, Gua
2023-02-06 14:53 ` ritul guru
2023-02-06 14:55 ` Guo, Gua
2023-02-06 15:12 ` ritul guru
2023-02-06 15:13 ` Guo, Gua
2023-02-06 16:51 ` ritul guru [this message]
2023-02-06 17:52 ` ritul guru
2023-02-06 18:02 ` ritul guru
2023-02-06 23:08 ` Guo, Gua
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAHHF-2+sLYkyj-h8EqeU_E24DswQVh-L69WH5uFpoUiBQ1yqog@mail.gmail.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox