[已解决]【错误】Libevcoder has been miscompliled

来源:互联网 发布:电脑无线mac地址怎么查 编辑:程序博客网 时间:2024/05/29 21:36


提示错误:Compiler did not align stack variables. Libevcoder has been miscompliled and may be very slow or crash. This is not a bug in libavcodec, but in the compiler.You may try recompiling using gcc>=4.2.Dot not report crashes to FFmpeg developers.

windows下的GCC即MinGW,Libavcodec是ffmpeg中关于音视频编解码的库。


解决方法: 

 建议装一个较高版本的MinGW试一下(http://www.mingw.org/)
MinGW是指只用自由软件来生成纯粹的Win32可执行文件的编译环境,它是Minimalist GNU on Windows的略称。这里的“纯粹”是指「使用msvcrt.dll的应用程序」。无法使用MFC  。libavcodec是用来对视频文件中的音视频流进行解码的。


参考三篇文章配置成功:

mingw编译ffmpeg

mingw下编译ffmpeg

在windows平台下编译出libavcodec库


/********************此文可以被转发,但请转发者保留作者的署名权
****李浩
****msn:lihao_nx@hotmail.com
****
****email:lihaoyxj@gmail.com
****出处:lihaoyxj.cublog.cn
****from:www.cnblogs.com/lihaoyxj
*****************/
前边做了msys的环境搭建,在编译ffmpeg时,还需要做以下的工作。
1. 整合系统,把
call "c:"Program Files"Microsoft Visual Studio 9.0"VC"bin"vcvars32.bat"加到d:"msys"msys.bat的最前边。
2. 运行msys.bat后
切换到下载的ffmpeg目录中,因为msys走的是类UNIX路径,所以要按UNIX的方式切换路径等。
如: cd /d/ffmpeg
3.用configure配置Makefile
./configure --enable-shared --disable-static --enable-memalign-hack
这样是生成动态的编解码库,由于1 中加入了vcvars32.bat环境,故用这样的模式才会生成具体的dll及lib等,否则vc下调用接口又会折腾了.
4.make
编译ffmpeg整个项目
5. 在ffmpeg"libavcodec下就会有相应的dll,lib,而ffmpeg""libavformat下也会有相应的dll,lib.



原创粉丝点击