> On Sep 28, 2016, at 6:01 AM, dashing meng <[email protected]> wrote:
> 
> 
> Hi,
> Everyone.
> 
> My machine is a Intel P6200 cpu, no vt-x support, 64bit, Debian 8 64bit OS.
> 
> I am compiling EDK2 with the instruction at: 
> https://github.com/tianocore/tianocore.github.io/wiki/Common-instructions 
> <https://github.com/tianocore/tianocore.github.io/wiki/Common-instructions>
> When "Build Hello World!  (and the rest of MdeModulePkg)" by excute "build" 
> command, I encounter the error message
> below:
>  /src/edk2/MdeModulePkg/Include/Library/ImageDecoderLib.h:22:7: error: 
> unknown type name ‘IMAGE_FORMAT’
>    IN  IMAGE_FORMAT                  ImageFormat,
> I search the source, search the web, have not found any library file include 
> type name "IMAGE_FORMAT", 
> Where can I find the file define the type of "IMAGE_FORMAT"? Anyone has any 
> clue to fix this error?
> 

It looks like MdeModulePkg/Include/Protocol/PlatformLogo.h contains the 
definition of IMAGE_FORMAT and it is an enum. It should be included by 
MdeModulePkg/Include/Library/ImageDecoderLib.h


~/work/src/edk2(master)>git grep -w IMAGE_FORMAT
MdeModulePkg/Include/Library/BootLogoLib.h:37:  IN  IMAGE_FORMAT                
          ImageFormat,
MdeModulePkg/Include/Library/ImageDecoderLib.h:22:  IN  IMAGE_FORMAT            
      ImageFormat,
MdeModulePkg/Include/Library/ImageDecoderLib.h:52:  IN  IMAGE_FORMAT            
      ImageFormat,
MdeModulePkg/Include/Protocol/PlatformLogo.h:33:} IMAGE_FORMAT;
MdeModulePkg/Include/Protocol/PlatformLogo.h:70:     OUT IMAGE_FORMAT           
               *Format,
MdeModulePkg/Library/BmpImageDecoderLib/BmpImageDecoderLib.c:43:  IN  
IMAGE_FORMAT                  ImageFormat,
MdeModulePkg/Library/BootLogoLib/BootLogoLib.c:47:  IN  IMAGE_FORMAT            
              ImageFormat,
MdeModulePkg/Library/ImageDecoderLib/ImageDecoderLib.c:55:  IN  IMAGE_FORMAT    
              ImageFormat,
~/work/src/edk2(master)>git blame -L33,33 
MdeModulePkg/Include/Protocol/PlatformLogo.h
6313eb25 (Ruiyu Ni 2015-11-12 05:19:22 +0000 33) } IMAGE_FORMAT;
~/work/src/edk2(master)>git blame -L17,17 
MdeModulePkg/Include/Library/ImageDecoderLib.h
345c2b07 (Ruiyu Ni 2015-11-12 05:21:38 +0000 17) #include 
<Protocol/PlatformLogo.h>

Thanks,

Andrew Fish




> Thanks.
> 
> PS:
> The main content of the source file is below:
> 
> /** @file
>   This library provides image decoding service by managing the different
>   image decoding libraries.
>  
> Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>
> This program and the accompanying materials are licensed and made available 
> under
> the terms and conditions of the BSD License that accompanies this 
> distribution.
> The full text of the license may be found at
> http://opensource.org/licenses/bsd-license.php 
> <http://opensource.org/licenses/bsd-license.php>.
>  
> THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
> WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
>  
> **/
> #ifndef __IMAGE_DECODER_LIB_H__
> #define __IMAGE_DECODER_LIB_H__
> #include <Protocol/PlatformLogo.h>
>  
> typedef
> EFI_STATUS
> (EFIAPI *DECODE_IMAGE)(
>   IN  IMAGE_FORMAT                  ImageFormat,
>   IN  UINT8                         *Image,
>   IN  UINTN                         ImageSize,
>   OUT EFI_GRAPHICS_OUTPUT_BLT_PIXEL **GopBlt,
>   OUT UINTN                         *GopBltSize,
>   OUT UINTN                         *PixelWidth,
>   OUT UINTN                         *PixelHeight
>   );
>  
> /**
>   Convert a graphics image to a callee allocated GOP blt buffer.
>  
>   @param  ImageFormat   Format of the image file.
>   @param  Image         Pointer to image file.
>   @param  ImageSize     Number of bytes in Image.
>   @param  GopBlt        Buffer containing GOP version of Image.
>   @param  GopBltSize    Size of GopBlt in bytes.
>   @param  PixelWidth    Width of GopBlt/Image in pixels.
>   @param  PixelHeight   Height of GopBlt/Image in pixels.
>  
>   @retval EFI_SUCCESS           GopBlt and GopBltSize are returned.
>   @retval EFI_INVALID_PARAMETER GopBlt or GopBltSize is NULL.
>   @retval EFI_INVALID_PARAMETER Image is NULL or ImageSize is 0.
>   @retval EFI_UNSUPPORTED       Image is not supported.
>   @retval EFI_OUT_OF_RESOURCES  No enough buffer to allocate.
>  
> **/
> EFI_STATUS
> EFIAPI
> DecodeImage (
>   IN  IMAGE_FORMAT                  ImageFormat,
>   IN  UINT8                         *Image,
>   IN  UINTN                         ImageSize,
>   OUT EFI_GRAPHICS_OUTPUT_BLT_PIXEL **GopBlt,
>   OUT UINTN                         *GopBltSize,
>   OUT UINTN                         *PixelWidth,
>   OUT UINTN                         *PixelHeight
>   );
>  
> /**
>   Register an image decoder.
>  
>   @param Decoder  An image decoder.
>  
>   @retval EFI_SUCCESS          The decoder was successfully registered.
>   @retval EFI_OUT_OF_RESOURCES No enough resource to register the decoder.
>  
> **/
> EFI_STATUS
> EFIAPI
> RegisterImageDecoder (
>   IN  DECODE_IMAGE     Decoder
>   );
>  
> #endif
> 
> -------------------------------
> 
> dashing meng
> _______________________________________________
> edk2-devel mailing list
> [email protected] <mailto:[email protected]>
> https://lists.01.org/mailman/listinfo/edk2-devel 
> <https://lists.01.org/mailman/listinfo/edk2-devel>
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to