在ffmpeg中使用build_libstagefright为android构建文件.so

时间:2012-11-06 07:38:57

标签: android windows-7 android-ndk ffmpeg cygwin

为了在android中使用ffmpeg,我试图在

中使用build_libstagefright来构建ffmpeg

的ffmpeg /工具/ lib_stagefright

但是alwalys似乎出现了一个我无法解决的错误。

ffmpeg / config.log底部的消息是

arm-linux-androideabi-g ++ -D_ISOC99_SOURCE -D_FILE_OFFSET_BITS = 64 -D_LARGEFILE_SOURCE -D_POSIX_C_SOURCE = 200112 -D_XOPEN_SOURCE = 600 -DPIC -I ../ android-source / frameworks / base / include -I ../ android-source / system / core / include -I ../ android-source / frameworks / base / media / libstagefright -I ../ android-source / frameworks / base / include / media / stagefright / openmax -I / home / user / android -ndk / sources / cxx-stl / gnu-libstdc ++ / include -I / home / user / android-ndk / sources / cxx-stl / gnu-libstdc ++ / libs / armeabi-v7a / include -march = armv7-a -mfloat -abi = softfp -mfpu = neon -march = armv7-a -std = c99 -fomit-frame-pointer -fPIC -marm -Wno-multichar -fno-exceptions -fno-rtti -D__STDC_CONSTANT_MACROS -c -o / tmp / ffconf .6ZzEMs87.o /tmp/ffconf.5jbfvJxK.cpp

./ configure:第701行:/home/user/android-ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-g++:无法执行二进制文件文件

错误:未找到libstagefright_h264

任何人都有解决方案吗?

我的构建环境是

  1. Window 7
  2. Cygwin的
  3. android-NDK-r8b linux版

2 个答案:

答案 0 :(得分:0)

我找到了一个方法,让我跨过这个错误。

在ffmpeg / configure

的文件中

原产地:

  
    

已启用libstagefright_h264&& require_cpp libstagefright_h264“binder / ProcessState.h media / stagefright / MetaData.h

  

修正:

  
    

启用了libstagefright&& require_cpp libstagefright_h264“binder / ProcessState.h media / stagefright / MetaData.h

  

当我在这里修复libstagefright_h264到libstagefright时,在下一个错误之前似乎正常。

CC      libavcodec/lagarithrac.o
CC      libavcodec/latm_parser.o
CXX     libavcodec/libstagefright.o
/bin/sh: /home/user/android-ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux- x86/bin/arm-linux-androideabi-g++: cannot execute binary file
CC      libavcodec/lcldec.o
common.mak:51: recipe for target `libavcodec/libstagefright.o' failed
make: *** [libavcodec/libstagefright.o] Error 126
make: *** Waiting for unfinished jobs....

PS:ffmpeg版本是1.0

答案 1 :(得分:0)

看看ffmpeg/config.log - 最后一行必须有错误说明。

PS。在Windows上我使用MinGW | MSYS成功编译ffmpeg