文章目录
- 环境
- 参考
- dockerfile 文件
- 步骤
- 常见问题
- docker 构建镜像出现 INTERNAL_ERROR 失败?
- 总结
环境
docker 环境
系统centos 7.9 (无所谓了 你用docker编译就无所谓系统了)
ffmpeg3.3
参考
https://blog.csdn.net/jiedichina/article/details/71438112
dockerfile 文件
FROM ubuntu:22.04
ENV DEBIAN_FRONTEND=noninteractive# Install packages
RUN set -eux \&& apt-get -yq update \&& apt-get -yq upgrade \&& apt-get -yq install autoconf automake build-essential \libass-dev libfreetype6-dev libsdl2-dev libtheora-dev \libtool libva-dev libvdpau-dev libvorbis-dev libxcb1-dev \libxcb-shm0-dev libxcb-xfixes0-dev pkg-config texinfo zlib1g-dev \&& exit 0# yasm
RUN set -eux \&& apt-get -yq install yasm \&& exit 0# X264
RUN set -eux \&& apt-get -yq install libx264-dev \&& exit 0# AAC
RUN set -eux \&& apt-get -yq install libfdk-aac-dev \&& exit 0# mp3
RUN set -eux \&& apt-get -yq install libmp3lame-dev \&& exit 0# opus
RUN set -eux \&& apt-get -yq install libopus-dev \&& exit 0# VPX
RUN set -eux \&& apt-get -yq install libvpx-dev \&& exit 0
步骤
tar -xvf ffmpeg-3.2.2.tar.bz2docker buildx build . -t test/ffmpeg-envdocker run -itd -v /root/ffmpeg/:/root/code --name ffmepg-compile-env test/ffmpeg-env:latestdocker container ls -a docker exec -it [container_id] /bin/bash
进入docker后
cd /root/code/ffmpeg-3.2.2./configure make # 默认编译动态库 编译自己再找配置一下make install DESTDIR=/root/code/build exit
退出后即可在/root/ffmpeg/build下看到自己编译的 bin、lib、share、include
常见问题
docker 构建镜像出现 INTERNAL_ERROR 失败?
dockerfile文件记得要使用utf-8编码
https://segmentfault.com/q/1010000044551449
总结
编译环境相对容易搭建,但要注意docker的镜像仓库 可能会无法访问 记得更换国内镜像仓库