• ubuntu下交叉编译ffmpeg


    环境:ubuntu16.04

    交叉编译器版本:4.8.3

    依赖x264,lame

    x264:

    1.wget ftp://ftp.videolan.org/pub/x264/snapshots/last_stable_x264.tar.bz2

    2.tar xvf last_stable_x264.tar.bz2

    3.cd x264-snapshot-20170903-2245-stable

    4.export CC=arm-linux-gnueabi-gcc

    5.export AR=arm-linux-gnueabi-ar

    6.mkdir build

    7.cd build

    8. ../configure --enable-static --enable-shared --disable-asm --prefix=$PWD/__install --host=arm-linux-gnueabi

    9.make

    10.make install

    lame:

    1.wget https://sourceforge.net/projects/lame/files/lame/3.99/lame-3.99.5.tar.gz

    2.tar xvf lame-3.99.5.tar.gz

    3.cd lame-3.99.5
    4.mkdir build

    5.cd build

    6. ../configure --prefix=$PWD/__install --host=arm-linux-gnueabi

    7.make

    8.make install

    ffmpeg:

    1.wget www.ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2

    2. tar xvf ffmpeg-snapshot.tar.bz2

    3.cd ffmpeg

    4.mkdir build

    5.cd build

    6. ../configure --cross-prefix=/opt/x86-arm/arm-linux/bin/arm-linux-gnueabi- --disable-asm --enable-static --arch=arm --target-os=linux --prefix=$PWD/_install --disable-x86asm --enable-gpl --enable-libx264  --enable-nonfree --enable-cross-compile --extra-cflags=-I/home/jello/x264-snapshot-20170903-2245-stable/build/_install/include --extra-ldflags=-L/home/jello/x264-snapshot-20170903-2245-stable/build/_install/lib --extra-libs=-ldl

    7.进过步骤6在当前目录下有ffbuild/config.mak,那么修改此文件

    文件中有以下四处需要修改

    1.

    CFLAGS=  -I/home/jello/x264-snapshot-20170903-2245-stable/build/_install/include -march=armv5te -std=c11 -fomit-frame-pointer -marm -pthread -g -Wdeclaration-after-statement -Wall -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wwrite-strings -Wtype-limits -Wundef -Wmissing-prototypes -Wno-pointer-to-int-cast -Wstrict-prototypes -Wempty-body -Wno-parentheses -Wno-switch -Wno-format-zero-length -Wno-pointer-sign -O3 -fno-math-errno -fno-signed-zeros -fno-tree-vectorize -Werror=format-security -Werror=implicit-function-declaration -Werror=missing-prototypes -Werror=return-type -Werror=vla -Wformat -Wno-maybe-uninitialized

    2.

    ASFLAGS=  -I/home/jello/x264-snapshot-20170903-2245-stable/build/_install/include -march=armv5te -g

    3.

    LDFLAGS= -L/home/jello/x264-snapshot-20170903-2245-stable/build/_install/lib  -march=armv5te -Wl,--as-needed -Wl,-z,noexecstack -Wl,--warn-common -Wl,-rpath-link=libpostproc:libswresample:libswscale:libavfilter:libavdevice:libavformat:libavcodec:libavutil:libavresample

    4.EXTRALIBS=-lx264 -lm -pthread -pthread -lrt -ldl

    将以上四项改动如下:

    1.

    CFLAGS=  -I/home/jello/x264-snapshot-20170903-2245-stable/build/_install/include -I/home/jello/lame-3.99.5/build/_install/include/lame -march=armv5te -std=c11 -fomit-frame-pointer -marm -pthread -g -Wdeclaration-after-statement -Wall -Wdisabled-optimization -Wpointer-arith -Wredundant-decls -Wwrite-strings -Wtype-limits -Wundef -Wmissing-prototypes -Wno-pointer-to-int-cast -Wstrict-prototypes -Wempty-body -Wno-parentheses -Wno-switch -Wno-format-zero-length -Wno-pointer-sign -O3 -fno-math-errno -fno-signed-zeros -fno-tree-vectorize -Werror=format-security -Werror=implicit-function-declaration -Werror=missing-prototypes -Werror=return-type -Werror=vla -Wformat -Wno-maybe-uninitialized

    2.

    ASFLAGS=  -I/home/jello/x264-snapshot-20170903-2245-stable/build/_install/include -I/home/jello/lame-3.99.5/build/_install/include/lame -march=armv5te -g

    3.

    LDFLAGS= -L/home/jello/x264-snapshot-20170903-2245-stable/build/_install/lib -L/home/jello/lame-3.99.5/build/_install/lib  -march=armv5te -Wl,--as-needed -Wl,-z,noexecstack -Wl,--warn-common -Wl,-rpath-link=libpostproc:libswresample:libswscale:libavfilter:libavdevice:libavformat:libavcodec:libavutil:libavresample

    4.EXTRALIBS=-lx264 -lm -pthread -pthread -lrt -ldl -lmp3lame

    8.make

    9.make install

    交叉编译完成!!!

  • 相关阅读:
    Springboot整合MongoDB的Docker开发,其它应用也类似
    Docker可视化工具Portainer
    Mac上使用Docker Desktop启动Kubernetes,踩坑后终于搞掂
    Docker入门——理解Docker的核心概念
    删库吧,Bug浪——我们在同一家摸鱼的公司
    一键下载网页所有图片,把美丽存下来
    序列推荐(transformer)
    [论文笔记] An introduction to ROC analysis
    【推荐算法工程师技术栈系列】分布式&数据库--tensorflow
    [论文翻译]Practical Diversified Recommendations on YouTube with Determinantal Point Processes
  • 原文地址:https://www.cnblogs.com/dakewei/p/7476608.html
Copyright © 2020-2023  润新知