ffmpeg3.0 android 编译,使用Android NDK为x86编译FFmpeg 3.1.1

FFmpeg的最新版本是3.1.1.在3.1版之后,我无法为x86编译FFmpeg.(但是可以编译3.0.2或更早版本.)

终端显示ld:error:libavutil /../ compat / strtod.o:不兼容的目标.

我的操作系统是Xubuntu 14.04 x86和x86_64.(我已经尝试了它们.)

我的NDK版本是r10e(x86)和r12b(x86_64).

当我编译FFmpeg 3.0.2时,它没有错误.

这是我的配置:

./configure \

--prefix="${PREFIX}" \

--enable-shared \

--disable-static \

--disable-doc \

--disable-ffplay \

--disable-ffprobe \

--disable-ffserver \

--cross-prefix="${PREFIX}/bin/i686-linux-android-" \

--target-os=linux \

--arch=x86 \

--enable-cross-compile \

--sysroot="${PREFIX}/sysroot" \

--extra-cflags="" \

--extra-ldflags="" \

--extra-libs="" \

--disable-debug

${PREFIX}是运行make-standalone-toolchain.sh时用于–install-dir选项的目录路径,这是Android NDK中的一个工具.

它只在我为x86编译FFmpeg时发生. ARM架构还可以.

解决方法:

我遇到了同样的问题并找到了解决方法.如果您之前为另一个体系结构构建,请务必删除“compat / strtod.o”和“compat / strtod.d”.出于某些原因,如果您在3.1.1中更改了体系结构,则不会重建这些内容,但它在以前的版本中运行良好.你应该在建造之前做一个“干净”.

标签:c-3,android,c,ffmpeg,android-ndk

来源: https://codeday.me/bug/20190722/1502671.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值