如何写一个UEFI Shell环境下的一个小应用
四,创建自己的包
其实也很简单,新建一只“MyPkg”的文件夹,然后把下面的两只文件加入文件夹就可以了,一个完整的Pkg就算建好了。最后就是建立一个“Application”文件夹,把之前的三个“HelloWorld”加入“Application”文件夹即可。另外需要注意的是还需要做一些相应的改动。具体可以参考《UEFI原理与编程》这本书,介绍得挺详细的,本文绝大部分内容都是参考UDK代码和那本书的,算是一个小的总结,也方便往后自己回顾这些内容。
MyPkg.dec
[Defines]
DEC_SPECIFICATION = 0x00010005
PACKAGE_NAME = MyPkg
PACKAGE_GUID = B3E3D3D5-D62B-4497-A175-264F489D127E
PACKAGE_VERSION = 0.01
[Guids]
gMyPkgTokenSpaceGuid = { 0x6e71712, 0x22b7, 0x47e5, { 0x8c, 0xb1, 0x47, 0xcf, 0xc6, 0x49, 0x48, 0xf8 } }
[PcdsFeatureFlag]
gMyPkgTokenSpaceGuid.PcdHelloWorldPrintEnable|TRUE|BOOLEAN|0x0001200a
[PcdsFixedAtBuild, PcdsPatchableInModule, PcdsDynamic, PcdsDynamicEx]
gMyPkgTokenSpaceGuid.PcdHelloWorldPrintString|L"UEFI Hello World!\n"|VOID*|0x40000004
gMyPkgTokenSpaceGuid.PcdHelloWorldPrintTimes|1|UINT32|0x40000005
MyPkg.dsc
[Defines]
PLATFORM_NAME = MyPkg
PLATFORM_GUID = 2C13B7DF-7455-4fcc-8565-DFA22EE73EC5
PLATFORM_VERSION = 0.01
DSC_SPECIFICATION = 0x00010006
OUTPUT_DIRECTORY = Build/MyPkg
SUPPORTED_ARCHITECTURES = IA32|X64|ARM|AARCH64
BUILD_TARGETS = DEBUG|RELEASE|NOOPT
SKUID_IDENTIFIER