在arm平台Euler系统上编译安装ffmpeg

问题背景

arm平台上,fmpeg不一定能用yum install轻松安装,可能要编译安装。

环境配置

以下是我的版本配置,读者可以下载同版本的tag分支,以便复现。

复制代码
ffmpeg version 5.1.2 Copyright (c) 2000-2022 the FFmpeg developers
  built with gcc 7.3.0 (GCC)

Euler版本如下:

复制代码
NAME="EulerOS"
VERSION="2.0 (SP10)"
ID="euleros"
VERSION_ID="2.0"

主要流程

主要参考腾讯教程FFmpeg开发笔记(七)欧拉系统编译安装FFmpeg的"二、在EulerOS(欧拉系统)上编译安装FFmpeg"一节。

以下是我跟随教程执行的一些经验:

第一步,yum install,安装前确保配好了yum镜像。安装时如果权限不足,可以用sudo。我安装g++时报错找不到,但跳过也没关系。

第二步,安装x264,执行make install如果权限不足,可以使用sudo,下同。作者使用非root用户执行./configuremake都没用到root权限,只在运行make install时用到了。

最后,记得要执行ffmpeg -version,如果没报错输出了各个组件的版本信息,才说明安装成功。如果遇到了"error while loading shared libraries"的报错,请参考下文。

解决报错:error while loading shared libraries

分别遇到了两个报错:

  • ffmpeg查看版本报错error while loading shared libraries: libavdevice.so.59
  • ffmpeg: error while loading shared libraries: libx264.so.164: cannot open shared object file: No such file or directory

参考博客如下:

改写后的/etc/ld.so.conf内容如下,其中/usr/local/ffmpeg/lib/是ffmpeg安装的目录,/usr/local/lib是x264安装的目录。

复制代码
/usr/local/ffmpeg/lib/
/usr/local/lib

执行ldconfig激活配置,即可修复两个错误。

相关推荐
小爷毛毛_卓寿杰2 小时前
我把一个 3B 模型塞进了 Xinference,然后它干掉了 DeepSeek V3.2
人工智能·开源·github
秦先生在广东2 小时前
Agent 闭环才是真正的护城河:Anthropic “300 个 Agent“ 背后被忽视的秘密
人工智能
Bigfish_coding2 小时前
前端转agent-【python】- 14 记忆系统优化:摘要与遗忘
人工智能
Bigfish_coding3 小时前
前端转agent-【python】-13 Ollama Python流式输出教程:stream=True 与 async 实践
人工智能
字节跳动数据库5 小时前
文章分享——相似函数处理方法
人工智能·后端·程序员
Bigfish_coding5 小时前
前端转agent-【python】-12 LangChain 入门实战:RAG + LCEL 链式调用
人工智能
程序员cxuan5 小时前
读懂 Claude Code 架构分析系列,第一篇,开始!
人工智能·后端·架构
饼干哥哥6 小时前
扣子3.0测评:我让 Codex 和 Claude Code 住同一个桌面,结果它们打架了!
人工智能·开源·代码规范
Token炼金师6 小时前
IP-Adapter:解耦交叉注意力如何让扩散模型看见图像
人工智能
Bigfish_coding6 小时前
前端转agent-【python】-11 LangGraph 高级特性:时间旅行与人工介入
人工智能