ffmpeg在启动时在cygwin上崩溃

ffmpeg在启动时在cygwin上崩溃

本文介绍了ffmpeg在启动时在cygwin上崩溃,退出代码为0xc0000022的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图用libx264支持构建ffmpeg。配置和编译是成功的,但是当我运行ffmpeg应用程序崩溃。

I am trying to build ffmpeg with libx264 support. Configure and compilation is successful but when I am running the ffmpeg the application is crashing.

ffmpeg configure option : ./configure --enable-static --enable-libx264 --enable-pthreads --enable-gpl --disable-doc --enable-memalign-hack --extra-ldflags="-L/usr/local/lib"
gcc --version 4.3.4

这里是gdb dump,

Here is gdb dump,

$gdb ffmpeg_g.exe
GNU gdb(GDB) 7.2
Copyright(c) 2010 Free Software Foundation
This GDB has configured as mingw32

Reading symbols from C:\work\ffmpeg25jan2011\ffmpeg\ffmpeg_g.exe.....done
(gdb) break main
BreakPoint 1 at 0x40a120 : file ffmpeg.c, line 4317
(gdb) run -V
Starting program: C:\work\ffmpeg25jan2011\ffmpeg\ffmpeg_g.exe
[New Thread]
gdb: Unknown Target exception 0xc0000022 at 0x7c96671e
**During startup program exited with code 0xc0000022**

任何人都有任何线索,如何解决?

Anybody has any clue, How this can be resolved?

推荐答案

Windows错误代码0xc0000022表示应用程序无法初始化。它通常表明你的构建是破碎的。有很多事情可能会出错,但这里有一些事情要检查:

Windows error code 0xc0000022 means "The Application Failed to initialize." It usually indicates that your build is broken. There are lots of things that could have gone wrong, but here are some things to check:


  • 您应该构建所有的库链接到相同的工具链。

  • You should build all libraries you link to with the same toolchain. It may be possible to link a Cygwin-built ffmpeg to a VC++-built libx264, but since there's no good reason to do that, you shouldn't.

尝试来自源存储库的ffmpeg及其依赖关系的head版本

Try the "head" version of ffmpeg and its dependencies from the source repository

您显示Windows路径,使用Cygwin。尝试使用全Cygwin环境:从Cygwin bash shell构建,使用POSIX路径等。特别是,这将有助于确保库安装在构建工具可以找到的位置。

You show Windows paths, but claim to be using Cygwin. Try to use an all-Cygwin environment: build from a Cygwin bash shell, use POSIX paths, etc. In particular, this will help ensure that libraries get installed in places the build tools can find them.

您可能需要在 / usr / lib 中安装一些库,而不是默认的 / usr /

You may need to install some libraries in /usr/lib, rather than the default, /usr/local/lib.

尝试完整的重建: make clean&& make

这篇关于ffmpeg在启动时在cygwin上崩溃,退出代码为0xc0000022的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-04 22:55