12.07.2015 Views

EDK II Module Writer's Guide - Intel

EDK II Module Writer's Guide - Intel

EDK II Module Writer's Guide - Intel

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

3.7.5.7 Example Build HelloWorldBuild –p Mde<strong>Module</strong>Pkg/Mde<strong>Module</strong>Pkg.dsc –mMde<strong>Module</strong>Pkg/Application/HelloWorld/HelloWorld.inf –a IA32 –b DEBUG –tMYTOOLSHelloWorld.efi will be generated in DEBUG directory:$(WORKSAPCE)/Build/Mde<strong>Module</strong>Pkg/DEBUG_MYTOOLS/IA32/Mde<strong>Module</strong>Pkg/Application/HelloWorld/HelloWorld/DEBUG, OUTPUTIn the build DEBUG directory the following files are created: the EFI image,intermediate files, AutoGen.h/.c and <strong>Module</strong>.map file.AutoGen.h/.c files are generated for each module by the <strong>EDK</strong> <strong>II</strong> build tool based onthe required module information. They declare the dependent PCDs, Guid Values andinclude module entry point related function. Those AutoGen functions are referred inthe <strong>Module</strong>EntryPoint library instance. For each module, the entry point function fistcalls AutoGen code, then enters into module functions.<strong>Module</strong>.map is generated by a compiler tool to list all functions and their relativeaddresses in this module. They can be used to locate the module function address atrun time.3.7.6 Build EFI Option Rom imageAn EFI Option Rom image is a standard EFI image. It can be built by the build modulecommand mentioned in the above section. The only difference is that its INF includesthe related PCI option in [Defines] section. When PCI option is set in module INF, thismodule will be built to EFI and Option Rom image both. In build DEBUG directory,<strong>Module</strong>Name.efi and <strong>Module</strong>Name.rom will be generated.The following example contains all PCI options required to create EFI option romimage.43

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!