在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激活配置,即可修复两个错误。

相关推荐
Elastic 中国社区官方博客3 小时前
Elasticsearch:使用 Agent Builder 的 A2A 实现 - 开发者的圣诞颂歌
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
chools3 小时前
【AI超级智能体】快速搞懂工具调用Tool Calling 和 MCP协议
java·人工智能·学习·ai
郝学胜-神的一滴3 小时前
深度学习必学:PyTorch 神经网络参数初始化全攻略(原理 + 代码 + 选择指南)
人工智能·pytorch·python·深度学习·神经网络·机器学习
leobertlan3 小时前
好玩系列:用20元实现快乐保存器
android·人工智能·算法
笨笨饿3 小时前
#58_万能函数的构造方法:ReLU函数
数据结构·人工智能·stm32·单片机·硬件工程·学习方法
jr-create(•̀⌄•́)3 小时前
从零开始:手动实现神经网络识别手写数字(完整代码讲解)
人工智能·深度学习·神经网络
冬奇Lab4 小时前
一天一个开源项目(第78篇):MiroFish - 用群体智能引擎预测未来
人工智能·开源·资讯
冬奇Lab4 小时前
你的 Skill 真的好用吗?来自OpenAI的 Eval 系统化验证 Agent 技能方法论
人工智能·openai
数智工坊4 小时前
Transformer 全套逻辑:公式推导 + 原理解剖 + 逐行精读 - 划时代封神之作!
人工智能·深度学习·transformer
GreenTea4 小时前
AI 时代,工程师的不可替代性在哪里
前端·人工智能·后端