On Jan 31, 2014, at 4:11 PM, John Davis <[email protected]> wrote:
> Hello
>
> I'm trying to #include <PeImage.h> in a .c file.
> I think, but not certain that the inf file [LibraryClasses] determines the
> include path as well as libs to link. With that said I added
>
Include paths are inherited from packages. So it is the [Packages] section you
need to look at.
For https://svn.code.sf.net/p/edk2/code/trunk/edk2/MdePkg/MdePkg.dec
you will see that the public include path is MdePkg/Include so
#include <IndustryStandard/PeImage.h>
Also you could probably figure this out form grep’ing the source base:
>git grep PeImage.h
Include/Library/PeCoffLib.h:22:#include <IndustryStandard/PeImage.h>
Include/Protocol/DebugSupport.h:24:#include <IndustryStandard/PeImage.h>
Library/BasePeCoffGetEntryPointLib/PeCoffGetEntryPoint.c:23:#include
<IndustryStandard/PeImage.h>
Library/BasePeCoffLib/BasePeCoffLibInternals.h:23:#include
<IndustryStandard/PeImage.h>
> [LibraryClasses]
> UefiApplicationEntryPoint
> UefiLib
> BaseLib
>
The LibraryClass is about what libraries you link against. The LibraryClass
implies a .h file that defines the LibraryClass, and that is what you
driver/application is coded against. The .DSC file picks a library instance and
that is what gets linked with your application/driver. By Implies I mean your C
code #includes the library headers it needs and calls Library functions. The
function of the [LibraryClasses] section is linking the libraries. So if you
miss a library class you will get link errors for those lib functions.
Thanks,
Andrew Fish
> To my BaseLib to that section as shown, but it still does not pick it up
> during a > build all
>
> --
> John F. Davis
> 6 Kandes Court
> Durham, NC 27713
> 919-888-8358
>
> 独树一帜
>
>
> ------------------------------------------------------------------------------
> WatchGuard Dimension instantly turns raw network data into actionable
> security intelligence. It gives you real-time visual feedback on key
> security issues and trends. Skip the complicated setup - simply import
> a virtual appliance and go from zero to informed in seconds.
> http://pubads.g.doubleclick.net/gampad/clk?id=123612991&iu=/4140/ostg.clktrk_______________________________________________
> edk2-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/edk2-devel
------------------------------------------------------------------------------
WatchGuard Dimension instantly turns raw network data into actionable
security intelligence. It gives you real-time visual feedback on key
security issues and trends. Skip the complicated setup - simply import
a virtual appliance and go from zero to informed in seconds.
http://pubads.g.doubleclick.net/gampad/clk?id=123612991&iu=/4140/ostg.clktrk
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-devel