The UEFI shell is an application that can be run in a UEFI environment
(either on real or emulated hardware) similar to how the Windows command
prompt runs in the Windows OS. So first you need to have a UEFI
environment. There are many options here. There is a UEFI environment on
your computer before the Windows OS loads, so you can build and .efi file
from ShellPkg or get the pre-built one from ShellBinPkg and put it on a USB
and boot to it from your boot manager. You can also build an emulated
(Nt32Pkg) or virtual (OVMF) UEFI environment from edk2.
The simplest route for you is probably to build Nt32Pkg. It creates the
emulated UEFI environment and also builds the shell application for you and
starts it by default. There used to be really simple instructions on
tianocore, but things have gotten moved around a lot. Pretty much you just
build Nt32Pkg (32-bit, of course) and it produces and .exe deep in the
Build folder. You run the .exe and it brings up the emulated environment
and starts the shell application. If my memory is correct, you just need to
change your TOOL_CHAIN_TAG to VS2013x86, and in edk2 folder from the
command line run "edksetup.bat --nt32" to set up your build environment,
then "build" to actually build Nt32Pkg, then "build run" to run the .exe
that is produced.
Btw, MdeModulePkg is just a collection of drivers and libraries, it is not
a full firmware. Packages like OvmfPkg and Nt32Pkg (ones containing a .fdf)
pull things together into a complete firmware. For real hardware, people
create their own packages (not included in edk2, of course) that pull
things together with platform specific code.
On Thu, Jul 9, 2015 at 12:25 AM, Tony <tony...@hotmail.com> wrote:
> I am very new to uefi dev and trying to understand how the environment
> needs to be setup to bring up the uefi shell.
>
> My current environment is:
> win 7 pro 64bit
> vs studio express 2013 for desktop
> edk2
>
> The edk2 binaries are in the f:\ folder. I have modified target_arch &
> toolchain to reflect my build platforms. That said I have tried x64 as my
> target_arch too.
>
> I like to think that I have set up the environment correctly (after
> ironing other errors) but when I do a build from vs2013 command line (and
> also from x64 command line) I get the following error for which I cannot
> seem to find a resolution:
>
> *f:\edk2\MdeModulePkg\Library\UefiHiiLib\HiiString.c(253) : error C2220:
> warning*
> *treated as error - no 'object' file generated*
> *f:\edk2\MdeModulePkg\Library\UefiHiiLib\HiiString.c(253) : warning C4013:
> 'GetEf*
> *iGlobalVariable2' undefined; assuming extern returning int*
> *NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual
> Studio 12.0*
> *\Vc\bin\cl.exe"' : return code '0x2'*
> *Stop.*
>
>
> *build...*
> * : error 7000: Failed to execute command*
> * C:\Program Files (x86)\Microsoft Visual Studio
> 12.0\Vc\bin\nmake.exe /no*
> *logo tbuild
> [f:\edk2\Build\MdeModule\DEBUG_VS2013x86\IA32\MdeModulePkg\Library\U*
> *efiHiiLib\UefiHiiLib]*
>
>
> *buiLD...*
> * : error F002: Failed to build module*
> * f:\edk2\MdeModulePkg\Library\UefiHiiLib\UefiHiiLib.inf [IA32,
> VS2013x86,*
> * DEBUG]*
>
> *- Failed -*
> *Build end time: 14:44:21, Jul.09 2015*
> *Build total time: 00:00:09*
>
> I read somewhere that the winsdk needs to change from the default v6.0a to
> one that suits your vs studio. I changed that to v8.0a to no effect.
>
> Following the guide from edk2 I set my active_platform to be
> MdeModulePkg/MdeModulePkg.dsc. I have seen other people using Nt32Pkg. I
> have tried that as well. What is the difference and why must we chose one
> over the other.
>
> I will appreciate your assistance.
>
> Thanks,
> Tony
>
>
>
> ------------------------------------------------------------------------------
> Don't Limit Your Business. Reach for the Cloud.
> GigeNET's Cloud Solutions provide you with the tools and support that
> you need to offload your IT needs and focus on growing your business.
> Configured For All Businesses. Start Your Cloud Today.
> https://www.gigenetcloud.com/
> _______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/edk2-devel
>
>
------------------------------------------------------------------------------
Don't Limit Your Business. Reach for the Cloud.
GigeNET's Cloud Solutions provide you with the tools and support that
you need to offload your IT needs and focus on growing your business.
Configured For All Businesses. Start Your Cloud Today.
https://www.gigenetcloud.com/
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel