On Jun 12, 2014, at 6:15 AM, Rafał Studziński <rafal.studzinsk...@gmail.com>
wrote:
> Hi All, I am a newbie in EFI. I have the following problem.
>
> I created my own package with my own test application (to understand EFI
> environment).
>
> Here is code in MyPkg.dsc:
>
> [Defines]
> PLATFORM_NAME = MyPkg
> PLATFORM_GUID = 22F5F173-EB34-43CA-AD34-2E82DE15E288
> PLATFORM_VERSION = 0.10
> DSC_SPECIFICATION = 0x00010005
> OUTPUT_DIRECTORY = Build/MyPkg
> SUPPORTED_ARCHITECTURES = IA32|X64
> BUILD_TARGETS = DEBUG|RELEASE
> SKUID_IDENTIFIER = DEFAULT
>
> [LibraryClasses]
>
> UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
>
>
> UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
>
>
> UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
> UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
>
> UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
> UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
>
> MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
> DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
> UefiUsbLib|MdePkg/Library/UefiUsbLib/UefiUsbLib.inf
> UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
> BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
> BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
>
> SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchronizationLib.inf
> PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
> DebugLib|MdePkg/Library/UefiDebugLibStdErr/UefiDebugLibStdErr.inf
>
> DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
>
> PostCodeLib|MdePkg/Library/BasePostCodeLibPort80/BasePostCodeLibPort80.inf
> PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
>
> [Components]
> MyPkg/MyApp/MyApp.inf
>
> MyPkg.dec:
>
> [Defines]
> DEC_SPECIFICATION = 0x00010005
> PACKAGE_NAME = MyPkg
> PACKAGE_GUID = 04106E18-1418-46A9-82A1-E28E0C46D02E
> PACKAGE_VERSION = 1.00
>
>
> [Includes]
> Include
>
> [LibraryClasses]
>
> MyApp.inf:
>
> [Defines]
> INF_VERSION = 0x00010005
> BASE_NAME = MyApp
> FILE_GUID = 72FF3FDF-6AD3-40FC-B417-0D49ED3E6F58
> MODULE_TYPE = UEFI_APPLICATION
> VERSION_STRING = 0.1
> ENTRY_POINT = MyAppEntryPoint
>
> [Sources]
> MyApp.c
>
> [Packages]
> MdePkg/MdePkg.dec
>
> [LibraryClasses]
> UefiApplicationEntryPoint
> UefiLib
>
[Guids]
gEfiSmbiosTableGuid
> MyApp.c:
>
> #include <Uefi.h>
> #include <UefiLib.h>
#include <Library/UefiLib.h>
#include <Guid/SmBios.h> // gEfiSmbiosTableGuid
#include <IndustryStandard/SmBios.h> // SMBIOS_TABLE_ENTRY_POINT
>
> EFI_STATUS
> EFIAPI
> SMBIOS_TABLE_ENTRY_POINT *mSmbiosTable = NULL;
>
> MyAppEntryPoint (
> IN EFI_HANDLE ImageHandle,
> IN EFI_SYSTEM_TABLE *SystemTable
> )
> {
> EfiGetSystemConfigurationTable (&gEfiSmbiosTableGuid,
> (VOID**)&mSmbiosTable);
> return EFI_SUCCESS;
> }
>
> I trying to get SM Bios EntryPoint informations, but when I run "build" I
> have error:
> "Cannot open include file: `UefiLib.h` : no such file or directory".
> I wanna use function:
> "EfiGetSystemConfigurationTable" from
> "\EDKII\MdePkg\Library\UefiLib\UefiLib.c"
>
The include paths come from the *.dec files that are listed in your INF file
[Packages] sections. The include path in the MdePkg is Include, so you have to
add the directory bit.
For a GUID/Protocol/Ppi you need to include the header, and list global in the
INF.
> How and where I must include this to good work with that?
>
> Please help me with that problem to understand the EFI environment
> and allow me to use other functions of EDK2.
>
>
> ------------------------------------------------------------------------------
> HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions
> Find What Matters Most in Your Big Data with HPCC Systems
> Open Source. Fast. Scalable. Simple. Ideal for Dirty Data.
> Leverages Graph Analysis for Fast Processing & Easy Data Exploration
> http://p.sf.net/sfu/hpccsystems_______________________________________________
> edk2-devel mailing list
> edk2-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/edk2-devel
------------------------------------------------------------------------------
HPCC Systems Open Source Big Data Platform from LexisNexis Risk Solutions
Find What Matters Most in Your Big Data with HPCC Systems
Open Source. Fast. Scalable. Simple. Ideal for Dirty Data.
Leverages Graph Analysis for Fast Processing & Easy Data Exploration
http://p.sf.net/sfu/hpccsystems
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel