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

相关推荐
To_OC7 小时前
搞懂 Token 和 Embedding 后,我终于明白大模型是怎么 "读" 文字的
人工智能·llm·agent
冬奇Lab9 小时前
每日一个开源项目(第139篇):Voicebox - 本地运行的开源 ElevenLabs 替代品
人工智能·开源·资讯
冬奇Lab9 小时前
Skill 系列(03):Skill 设计范式——5 个模式让输出从混沌到可预测
人工智能·开源·agent
IT_陈寒11 小时前
Python搞不定字符串编码?这破玩意坑我两小时!
前端·人工智能·后端
大模型真好玩13 小时前
什么是Loop Engineering?最通俗易懂的Loop Engineering核心概念
人工智能·agent·deepseek
叁两13 小时前
前端转型AI Agent该如何学习?(前置篇)
前端·人工智能·node.js
LaiYoung_13 小时前
🎁 送你一套超好用超实用的 FE AI-Coding Skills
前端·人工智能·开源
ZzT16 小时前
怎么做才不会被 AI 替代?
人工智能·程序员
道友可好16 小时前
从今天开始:你的第一个 Harness Engineering 实践
前端·人工智能·后端