非常感谢韩曙亮的帮助,特以此篇记录编译过程。
韩兄相关文章的对应地址:https://blog.csdn.net/shulianghan/article/details/104351312
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
开始正文
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
原料:
1,ffmpeg:ffmpeg-4.0.2
下载地址:https://ffmpeg.org/releases/ffmpeg-4.0.2.tar.bz2
2,ndfk:ndk-17c
下载地址:
https://dl.google.com/android/repository/android-ndk-r17c-linux-x86_64.zip?hl=zh_cn
3,ubantu:ubuntu-18.04.4
下载地址:
http://releases.ubuntu.com
*** 作步骤:
1,在VMware Workstation虚拟机上安装ubantu *** 作系统,参考地址:
https://www.cnblogs.com/Asgard-l/p/10301453.html
2,进入ubantu *** 作系统里,在home目录里新建一个文件夹ndk(文件夹名随意英文),将ffmpeg和ndk都下载到此文件夹中并解压。
3,在此文件夹中空白处右键点击“在终端中打开”调出linux命令集窗口,输入这个命令:
apt-get install make,安装make才能正常编译ffmpeg。
4,进入下载并解压好的ndk-17c中,右键“在终端中打开”,进入命令集窗口,输入pwd命令,获取ndk-17c实际的文件路径。注意能否编译成功,路径正确是一大必要因素。记录下此路径,后面要用。
5,进入ffmpeg根目录下,右键新建一个文件名为build.sh,文本工具打开文件,输入内容:
#!/bin/bash# NDK 根目录NDK_ROOT=/home/你的用户名/NDK/androID-ndk-r17c# TOolCHAIN 变量指向 gcc g++ 等交叉编译工具所在的目录TOolCHAIN=$NDK_ROOT/toolchains/arm-linux-androIDeabi-4.9/prebuilt/linux-x86_64# gcc 编译器参数FLAGS="-isysroot $NDK_ROOT/sysroot -isystem $NDK_ROOT/sysroot/usr/include/arm-linux-androIDeabi -isystem $NDK_ROOT/sources/androID/support/include -D__ANDROID_API__=21 -g -DANDROID -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16 -mthumb -Wa,--noexecstack -Wformat -Werror=format-security -O0 -fPIC"# 编译结果输出路径PREFIX=./androID/armeabi-v7a# 执行 configure 脚本生成 Makefile 构建脚本./configure \--prefix=$PREFIX \--enable-small \--disable-programs \--disable-avdevice \--disable-encoders \--disable-muxers \--disable-filters \--enable-cross-compile \--cross-prefix=$TOolCHAIN/bin/arm-linux-androIDeabi- \--sysroot=$NDK_ROOT/platforms/androID-21/arch-arm \--extra-cflags="$FLAGS" \--arch=arm \--target-os=androID # 清除之前的编译内容make clean# 开启新的 FFMPEG 编译make install
***注意,将其中的NDK_ROOT改成你刚才记录的ndk-17c的具体路径。 ***
6,在ffmpeg根目录下右键空白,“在终端中打开”进入命令集。输入 sudo passwd root,linux系统要求你重设root密码,先输入用户的登录密码,再设置root密码。
7,设置root密码后,输入 su root,输入刚设置好的root密码,进入root模式,此时开始执行shell脚本相关命令。
8,输入 chmod 777 build.sh,给build.sh最高的读写权限,再输入 ./build.sh命令,此时如果一切配置正常的话,系统开始编译ffmpeg支持库。
9,编译完成后在ffmpeg根目录下会新生成一个androID文件夹,里面的armeabi-v7a文件夹中的所有文件即是此次编译的成果。具体有3个文件夹include,lib,share,其中inclue和lib即是你需要的ffmpeg支持库文件。
再次感谢韩曙亮。完毕。
总结
以上是内存溢出为你收集整理的用ubantu编译支持android的ffmpeg支持库,感谢韩曙亮全部内容,希望文章能够帮你解决用ubantu编译支持android的ffmpeg支持库,感谢韩曙亮所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)