关闭

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

632人阅读 评论(0) 收藏 举报


提示错误: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.



0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:62126次
    • 积分:734
    • 等级:
    • 排名:千里之外
    • 原创:11篇
    • 转载:13篇
    • 译文:0篇
    • 评论:14条
    文章分类
    文章存档
    最新评论