在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用户执行./configure和make都没用到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激活配置,即可修复两个错误。

相关推荐
styshoo12 分钟前
[snapshot]1-snapshot内部逻辑
人工智能
yi01116 分钟前
DAY28: LeetCode 111. 二叉树的最小深度
人工智能·笔记·python·算法·leetcode·二叉树·递归
方方洛18 分钟前
ai-agent教程-05-上下文工程
人工智能·llm·agent
阿里云大数据AI技术20 分钟前
从原始Ego视频到训练就绪:用 EMR Serverless Spark 上的 Ray 提效具身数据生产管线
人工智能·spark
智圣新创0124 分钟前
全国高校第二课堂数字化建设供需适配指南:从政策要求到落地运营的全链路效能提升路径
人工智能
土星云SaturnCloud27 分钟前
土星云边缘计算+AI视觉+视频存管:连锁汽修数字化升级实践
服务器·人工智能·ai·边缘计算
糖糖单片机设计33 分钟前
基于 STM32 的配网变压器涌流抑制器设计与实现
人工智能·stm32·嵌入式硬件·51单片机·语音识别
倔强的小石头_35 分钟前
从Go+SQLite编译到浏览器开局:landlord部署、AI对局与固定地址实战
人工智能·golang·sqlite
Rany-37 分钟前
基于机器学习的长距离原水管线泄漏检测和定位
人工智能
Dawson Zhu40 分钟前
《Agentic Design Patterns》第 17 章导读:推理技术
人工智能·语言模型·架构·aigc·agi