armv8 aarch64 交叉编译 ffmpeg
Posted Hello cruel world
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了armv8 aarch64 交叉编译 ffmpeg相关的知识,希望对你有一定的参考价值。
ffmpeg 支持各种压缩格式的视频解码库,经常出现在各种播放器中,交叉编译也是一项麻烦的事情。
1. 下载ffmpeg 源码包 http://ffmpeg.org/releases/ffmpeg-3.4.tar.bz2
2. 进入源码目录 ,配置configure 文件
./configure --sysroot=/opt/poky/2.0.1/sysroots/aarch64-poky-linux/ --cc=aarch64-poky-linux-gcc --ar=aarch64-poky-linux-ar --enable-cross-compile --target-os=linux --arch=aarch64 --prefix=./aarch64/ --enable-shared
配置过程比较关键 ,由于没有加 --ar = 。。。 会导致 Error: no such instruction: `rev16 %r。。。。 表示无法调用汇编代码
3. make make过程中会出现
strip: Unable to recognise the format of the input file问题
原因是 交叉工具编译环境和本地环境 中的 strip 程序冲突 可以 用 type strip 看看
解决办法是 在source 的 交叉编译脚本中 PATH 一行 ,最前面PATH = /你交叉编译环境下的 strip 程序/ : ....
4. make install
完成交叉编译。
以上是关于armv8 aarch64 交叉编译 ffmpeg的主要内容,如果未能解决你的问题,请参考以下文章
在运行 64 位 linux 的 Armv8 (aarch64) 上编译并运行 32 位二进制文件
经验分享华为atlas500系列aarch64交叉编译opencv
交叉编译Python-3.6.0到aarch64/aarch32 —— 支持sqlite3