Ubuntu x64下交叉编译ffmpeg、sdl2到目标架构为aarch64架构的系统(生成ffmpeg、ffprobe、ffplay)

一、编译SDL2-2.0.9

(1),

./configure --prefix=/home/z/Desktop/sdl2 --enable-shared=yes --enable-nasm=no --enable-audio=no --enable-oss=no --enable-alsa=no --enable-alsa-shared=no --enable-pulseaudio=no --enable-pulseaudio-shared=no --enable-arts=no --enable-arts-shared=no --enable-joystick=no --enable-cdrom=no --enable-threads=yes --enable-timers=yes --enable-endian=yes --enable-file=yes --enable-esd=no --enable-arts=no --enable-nas=no --enable-diskaudio=no --enable-mintaudio=no --enable-dummyaudio=no --enable-altivec=no --enable-video-x11=no --enable-dga=no --enable-video-x11-vm=no --enable-video-x11-xme=no --enable-video-dga=no --enable-video-photon=no --enable-video-directfb=no --enable-video-ps2gs=no --enable-video-xbios=no --enable-video-gem=no --enable-video-opengl=no --enable-pth=no --enable-pthreads=yes --enable-pthread-sem=no --enable-input-events=no --build=i386-linux --host=aarch64-linux-gnu CC=/home/z/Desktop/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc AR=/home/z/Desktop/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc-ar --enable-input-tslib=yes CPPFLASS="-I/home/z/Desktop/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/include" LDFAGS="-L/home/z/Desktop/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/lib"

(2),

make -j4

(3),

make install

二、编译ffmpeg 4.2.1

(1),

./configure --enable-cross-compile --target-os=linux --arch=aarch64 --cross-prefix=/home/z/Desktop/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu- --cc=/home/z/Desktop/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-gcc --cxx=/home/z/Desktop/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-g++ --prefix=/home/z/Desktop/ffmpeg4.2.1_linux_arm64 --disable-asm --enable-parsers --disable-decoders --enable-decoder=h264 --enable-decoder=aac --disable-debug --enable-ffmpeg --enable-shared --disable-static --disable-stripping --disable-doc --enable-ffplay --extra-cflags=-I/home/z/Desktop/sdl2/include/SDL2 --extra-ldflags=-L/home/z/Desktop/sdl2/lib/ --extra-libs=-ldl --extra-libs=-lSDL2

(2),

执行configure后编辑ffbuild目录下的config.mak,

将!CONFIG_FFPLAY=yes改为CONFIG_FFPLAY=yes

(3),

make -j4

(4),

make install

执行以上步骤后,生成aarch64版的ffmpeg、ffprobe、ffplay

相关推荐
什么半岛铁盒10 小时前
C++项目:仿muduo库高并发服务器-------Channel模块实现
linux·服务器·数据库·c++·mysql·ubuntu
feiyangqingyun10 小时前
基于Qt和FFmpeg的安卓监控模拟器/手机摄像头模拟成onvif和28181设备
android·qt·ffmpeg
神都少年12 小时前
Linux Ubuntu Docker 常用命令
linux·ubuntu·docker
Tipriest_12 小时前
Ubuntu 中 Bash / Zsh / Ash / Dash 的使用与区别(含对比图)
ubuntu·bash·dash
骄傲的心别枯萎17 小时前
RV1126 NO.30:RV1126多线程获取音频AI的PCM数据
linux·ffmpeg·音视频·pcm·视频编解码
老黄编程1 天前
ubuntu 20.04 代号 focal , ubuntu 22.04 代号为 jammy, ubuntu24.04 代号为 noble
linux·运维·ubuntu
陈震_1 天前
linux系统(ubuntu)安装mysql8详细教程
linux·运维·ubuntu
LoneEon1 天前
Ubuntu 部署 Harbor 构建企业级私有镜像仓库
linux·运维·ubuntu·docker·harbor
Kusunoki_D1 天前
Linux to go Ubuntu 22.04 不匹配无线网卡 MT7925 的解决方法
linux·ubuntu
goldenocean1 天前
Ubuntu之旅-06 EMQX
linux·运维·ubuntu