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=/exports/rfs/usr  --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 看看

  解决办法是     cp /opt/poky/2.0.1/sysroots/x86_64-pokysdk-linux/usr/libexec/aarch64-poky-linux/gcc/aarch64-poky-linux/5.1.1/strip /opt/poky/2.0.1/sysroots/x86_64-pokysdk-linux/usr/bin/ .... (只添加strip 一个程序就够了,不然会出错)

4. make install

  完成交叉编译。

cross compile 交叉编译 ffmpeg的更多相关文章

  1. aarch64 cross compile 交叉编译 opencv

    需求 : linux host :  UBUNTU opencv source : opencv 3.3.1.zip CMAKE  :  apt-get install cmake cmake-qt- ...

  2. ubuntu 环境 cross compile 交叉编译 ARM Qt 集成 opencv

    Qt 的版本众多,交叉编译Qt可以下载 最新的 Qt 5.11,在 qtbase/mkspecs/devices/ 下找到你对应开发板的配置文件, 拷贝出来, 选择一版适用当前交叉编译工具链的版本,这 ...

  3. vmware虚拟机下ubuntu 13.04使用zeranoe脚本交叉编译ffmpeg

    2013-07-01今天是建党节,习总书记指出,党的建设要以“照镜子.正衣冠.洗洗澡.治治病”为总要求.希望我们的党越来越纯洁,为人民谋福利.言归正传,每次项目中需要编译相应的ffmpeg,都很费时费 ...

  4. cross compile vlc 播放器

    上一篇文章介绍了如何交叉编译 FFmpeg ,继续介绍  VLC播放器  交叉编译 . 首先下载 vlc 源码  我用的是 2.2.6  地址 : http://mirrors.neusoft.edu ...

  5. 产品中 configure/cross compile的一个bug

    在mac机上, 为iPhone版本编译产品. 运行./configure报错如下: configure:22793: error: cannot run test program while cros ...

  6. Cross compile perl

    Alex Suykov had do some work for this purpose, and my compile script is based on her patch. Steps St ...

  7. ubuntu下交叉编译ffmpeg

    环境:ubuntu16.04 交叉编译器版本:4.8.3 依赖x264,lame x264: 1.wget ftp://ftp.videolan.org/pub/x264/snapshots/last ...

  8. 基于Ubuntu交叉编译FFmpeg Windows SDK

    写在前面 FFmpeg是一个开源且跨平台的音视频解决方案,集采集.转码.流式化为一身,项目的libavcodec编解码模块和libavformat媒体格式模块,支持非常非常丰富的编解码格式和容器封装格 ...

  9. 记录一次Android交叉编译ffmpeg排查错误

    Android版本手机直播引擎中,引用了libvlc开源库.项目接过来,发现编译脚本中使用了很多用户名下的绝对路径.项目相关人离职,导致这个脚本实际上已经废掉.而且不知道相关路径下有没有其他文件和第三 ...

随机推荐

  1. EntityFramework 知识点与sql优化汇总

    一.EntityFramework modelBuilder.Entity<Domain.UseOilPlanDetail>().HasRequired(x => x.MainOil ...

  2. Java删除过期文件

    public static void main(String[] args) throws IOException { long cut = LocalDateTime.now().minusWeek ...

  3. adb.exe端口被占用,起不来报错

    一.准备部署android功能调试时:报错 Please ensure that adb is correctly located at 'D:\ProgramFiles\eclipse_jee_ox ...

  4. IT书单-持续更新

    重构:改善既有代码的设计代码整洁之道深入理解Java虚拟机Java并发编程的艺术<修改代码的艺术><程序员的职业素养>代码大全程序员修炼之道深入理解java虚拟机Java并发编 ...

  5. 新手创建多module mvn工程

    1.创建工程 创建一个mvn工程有两种方式,一种是通过命令创建,一种是通过idea去一步一步配置. 1.1 命令模式 mvn archetype:generate -DgroupId={groupId ...

  6. STL_set

    #include <iostream> #include <set> #include <string> #include <cstdio> using ...

  7. svn中的trunk,branch和tags(转)

    转自:https://www.cnblogs.com/keyi/p/5953649.html  我相信初学开发在SVN作为版本管理时,都估计没可能考虑到如何灵活的运用SVN来管理开发代码的版本,下面我 ...

  8. git常用操作命令归纳

    git开始 全局配置:配置用户名和e-mail地址 $ git config --global user.name"Your Name" $ git config --global ...

  9. Windows 获取windows密码

    #include <iostream> #define Main main #define COLOR_GREEN system("color 2"); #includ ...

  10. 阿里云物联网边缘计算加载MQTT驱动

    写在前面 本文在LinkEdge快速入门样例驱动的基础上,加载了MQTT订阅的客户端,使得边缘端容器可以通过MQTT获得外部数据. 1. 系统需求 物联网边缘计算平台,又名Link IoT Edge[ ...