win10编译ffmpeg

android-ndk-r14b(linux版)

ffmpeg-4.0

开启win10子系统(控制面板-》程序和功能-》启用或关闭Windows功能 然后在 适用与 Linux 的 Windows 子系统前面打勾)

然后在win10应用商店 搜索ubuntu安装后 即可打开liunx控制台(以后直接在windows控制台输入bash即可进入linux控制台)

 下面是执行的命令 ffmpeg的configure不需要做任何修改

android-ndk-r14b可以编译成功,但是使用android-ndk-r16却编译不通过

下面文件的地址在e:/ffmpeg/4.0/build/ffmpeg-4.0/目录下       cd到该目录下 执行chmod 777 build.sh  在执行./build.sh    

#build.sh
#!/bin/sh cd /mnt/e/ffmpeg/4.0/build/ffmpeg-4.0 #这里的这些变量根据自己本地的环境切换 export NDK=/mnt/e/ffmpeg/SDK/android-ndk-r14b export PREBUILT=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt export PLATFORM=$NDK/platforms/android-16/arch-arm export TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64 export CPU=arm export PREFIX=/mnt/e/ffmpeg/4.0/build/android/$CPU build_one(){ ./configure \ --target-os=linux \ --prefix=$PREFIX \ --enable-cross-compile \ --disable-asm \ --arch=$CPU \ --cross-prefix=$PREBUILT/linux-x86_64/bin/arm-linux-androideabi- \ --disable-stripping \ --nm=$PREBUILT/linux-x86_64/bin/arm-linux-androideabi-nm \ --sysroot=$PLATFORM \ --enable-gpl \ --enable-static \ --disable-shared \ --enable-small \ --disable-ffprobe \ --disable-ffplay \ --disable-ffmpeg \ --disable-debug \ $ADDITIONAL_CONFIGURE_FLAG make clean make j8 make install } build_one $TOOLCHAIN/bin/arm-linux-androideabi-ld \ -rpath-link=$PLATFORM/usr/lib \ -L$PLATFORM/usr/lib \ -L$PREFIX/lib \ -soname libffmpeg.so -shared -nostdlib -Bsymbolic --whole-archive --no-undefined -o \ $PREFIX/libffmpeg.so \ libavcodec/libavcodec.a \ libavfilter/libavfilter.a \ libswresample/libswresample.a \ libavformat/libavformat.a \ libavutil/libavutil.a \ libswscale/libswscale.a \ libpostproc/libpostproc.a \ libavdevice/libavdevice.a \ -lc -lm -lz -ldl -llog --dynamic-linker=/system/bin/linker \ $TOOLCHAIN/lib/gcc/arm-linux-androideabi/4.9.x/libgcc.a \ cd ..

  

猜你喜欢

转载自www.cnblogs.com/rchao/p/8973811.html