zoukankan      html  css  js  c++  java
  • 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

    交叉编译完成!!!

  • 相关阅读:
    MIne FirstBlog
    P6563 [SBCOI2020]一直在你身旁
    P6563 [SBCOI2020]一直在你身旁
    T122085 [SBCOI2020]时光的流逝
    LC 918. Maximum Sum Circular Subarray
    1026 Table Tennis
    LC 1442. Count Triplets That Can Form Two Arrays of Equal XOR
    LC 1316. Distinct Echo Substrings
    LC 493. Reverse Pairs
    1029 Median (二分)
  • 原文地址:https://www.cnblogs.com/dakewei/p/7476608.html
Copyright © 2011-2022 走看看