public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Guo, Gua" <gua.guo@intel.com>
To: ritul guru <ritul.bits@gmail.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 14:26:22 +0000	[thread overview]
Message-ID: <BL1PR11MB54787A5D0A006F68E3CEC36BEFDA9@BL1PR11MB5478.namprd11.prod.outlook.com> (raw)
In-Reply-To: <CAHHF-2Jr9cLbBdqjaRkD3FnZLukOd+7jJES_bkhoF2o-R6uhKw@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 8944 bytes --]

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

  reply	other threads:[~2023-02-06 14:26 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 [this message]
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
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=BL1PR11MB54787A5D0A006F68E3CEC36BEFDA9@BL1PR11MB5478.namprd11.prod.outlook.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