天天看点

vs2012 MinGW编译ffmpeg 出现libavdevice/avdevice.c(38) : error C2059: 语法错误:“.”

利用vs2012编译ffmpeg出现以下错误:

  libavdevice/avdevice.c(38) : error C2059: 语法错误:“.”

  libavdevice/avdevice.c(40) : error C2059: 语法错误:“,”

  libavdevice/avdevice.c(42) : error C2059: 语法错误:“,”

  libavdevice/avdevice.c(44) : error C2059: 语法错误:“,”

  libavdevice/avdevice.c(46) : error C2059: 语法错误:“,”

  libavdevice/avdevice.c(48) : error C2059: 语法错误:“,”

  libavdevice/avdevice.c(50) : error C2059: 语法错误:“,”

  libavdevice/avdevice.c(52) : error C2059: 语法错误:“,”

  libavdevice/avdevice.c(54) : error C2059: 语法错误:“,”

  libavdevice/avdevice.c(56) : error C2059: 语法错误:“}”

  libavdevice/avdevice.c(85) : fatal error C1903: 无法从以前的错误中恢复;正在停止编译

  make: *** [libavdevice/avdevice.o] Error 2

原因是avdevice.c 38行那段代码属于c99规范,vs2012只支持到c89,解决的方法是在C:\MinGW\msys\1.0\bin

下添加c99conv.exe以及c99wrap.exe文件,C:\MinGW\msys\1.0\bin需要添加在系统的环境变量Path。另外注意

检查ffmpeg configure文件,确定c99wrap.exe cl被执行,详细见下图:

vs2012 MinGW编译ffmpeg 出现libavdevice/avdevice.c(38) : error C2059: 语法错误:“.”

      图1 ffmpeg configure截图

      如有问题加群流媒体/Ffmpeg/音视频 127903734 交流,exe文件可以在群里下载。

视频下载地址:http://www.chungen90.com/?news_33/

 Demo下载地址: http://www.chungen90.com/?news_34