Re: [edk2] Running EFI Shell

Subject: Re: [edk2] Running EFI Shell

From: =?KOI8-R?B?98HMxdLJyiDiycPPxdc=?= <>


Date: 2012-10-26 18:58:40

>>I think it might be easier to change code in the newer UEFI shell.
Which newer UEFI Shell code you mean?

I tried manually load HiiDatabase.efi and DevicePathDxe.efi, but after that i got new error:
ASSERT_EFI_ERROR(Status= Device Error)
at that lines of code
Status = ShellCommandLibConstructor (ImageHandle, SystemTable);
in Autogen.c clarify, I would like to say that I will need to run builded shell not from internal shell, but separately, placing on FAT partition to a file EFI/BOOT/BOOTX64.EFI

2012/10/26 Jordan Justen <>
On Thu, Oct 25, 2012 at 11:19 AM, <> wrote:
> Binaries in EdkShellBinPkg works pretty good, but, unfortunately, i need to
> build Shell, because i want to change some things.

I think it might be easier to change code in the newer UEFI shell.

> 2012/10/25 Jordan Justen <>
>> On Thu, Oct 25, 2012 at 6:53 AM, <>
>> wrote:
>> > I am trying to build with GCC44 and run any version of EFI Shell with
>> > edk2. When I build ShellPkg and tried to run it, i got ASSERT() at
>> > this point:
>> >
>> > //
>> > // Retrieve the pointer to the UEFI HII String Protocol
>> > //
>> > Status = gBS->LocateProtocol (&gEfiHiiStringProtocolGuid, NULL,
>> > (VOID **) &gHiiString);
>> > ASSERT_EFI_ERROR (Status);
>> I believe this is what happens when you try to run the UEFI Shell on
>> an older (EFI, not UEFI) system.

I think Andrew Fish might have previously mentioned that it was
possible to run the new shell on older systems by first loading the
HiiDatabase.efi and DevicePathDxe.efi drivers on the system first.

To do this, first build MdeModulePkg for your architecture.

Then locate HiiDatabase.efi and DevicePathDxe.efi under the build directory.

Then load the two drivers in the old EFI shell on your system:
> load HiiDatabase.efi
> load DevicePathDxe.efi

Then run the new Shell.efi.

Can you give this a try?

If this is not workable for you, maybe Andrew or I could test the
current GccShellPkg to see if it working.


Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
edk2-devel mailing list