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 20:42:08 +0530 [thread overview]
Message-ID: <CAHHF-2+i5DnCESNYOxypK1Wou8vq6_o8TL2Fk_pk9jo6LhdEKQ@mail.gmail.com> (raw)
In-Reply-To: <CAHHF-2KMniyEp1LK=zt1q+poEodExjUt4OSPq+YSxRPTHSPS_g@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 15684 bytes --]
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 & RegardsRitul 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 & RegardsRitul 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: 29442 bytes --]
next prev parent reply other threads:[~2023-02-06 15:12 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 [this message]
2023-02-06 15:13 ` Guo, Gua
2023-02-06 16:51 ` ritul guru
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+i5DnCESNYOxypK1Wou8vq6_o8TL2Fk_pk9jo6LhdEKQ@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