我是靠谱客的博主 顺利云朵,最近开发中收集的这篇文章主要介绍【ffmpeg + VS2010】编译包含libavutil\common.h后出现找不到inttypes.h的问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

包含libavutilcommon.h,由于里面#include <inttypes.h> ,会出现找不到inttypes.h的问题,

即使把inttypes.h的路径加上去之后,也无法编译通过,反而会出现一大堆问题。

解决办法如下:

删除#include <inttypes.h>这句,加上下面一大段

//Howard 2013-03-04 , 解决包含inttypes.h以后出现的Bug
//#include <inttypes.h>
//Howard 2013-03-04 +++begin+++
#if defined(WIN32)  && !defined(__MINGW32__) && !defined(__CYGWIN__)      
#define  CONFIG_WIN32      
#endif      
#if defined(WIN32) && !defined(__MINGW32__)  && !defined(__CYGWIN__) && !defined(EMULATE_INTTYPES)      
#define EMULATE_INTTYPES      
#endif      
#ifndef EMULATE_INTTYPES      
#include  <inttypes.h>     
#else
typedef signed char int8_t;      
typedef  signed short int16_t;      
    typedef signed int   int32_t;      
    typedef  unsigned char  uint8_t;      
    typedef unsigned short uint16_t;      
    typedef  unsigned int   uint32_t;      
#ifdef CONFIG_WIN32      
        typedef signed  __int64   int64_t;      
        typedef unsigned __int64 uint64_t;      
#else /*  other OS */      
        typedef signed long long   int64_t;      
        typedef  unsigned long long uint64_t;      
#endif /* other OS */      
#endif /*  EMULATE_INTTYPES */


//解决UINT64_C没定义的问题
#ifndef INT64_C
#define INT64_C(c) (c##LL)
#define UINT64_C(c)  (c##ULL)
#endif 


//Howard 2013-03-04 +++end+++

最后

以上就是顺利云朵为你收集整理的【ffmpeg + VS2010】编译包含libavutil\common.h后出现找不到inttypes.h的问题的全部内容,希望文章能够帮你解决【ffmpeg + VS2010】编译包含libavutil\common.h后出现找不到inttypes.h的问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(43)

评论列表共有 0 条评论

立即
投稿
返回
顶部