ubuntu22.04下编译ffmpeg-6.0,并且激活x264编码功能。记录一下踩坑(ERROR: x264 not found using pkg-config)
一.编译x264(在编译前确保安装了pkg-config,默认在/usr/share下)
1.下载x264源代码:(我下载到了~/Downloads下,各位随意就好)
git clone https://code.videolan.org/videolan/x264.git
2.下载好后,将x264文件夹移动到/usr/local/下:
sudo mv x264 /usr/local
3.x264源码的配置和编译
cd /usr/local/x264
sudo ./configure --enable-static --prefix=/usr/local/x264
make -j16(具体看自己电脑几个线程)
sudo make install
注:prefix用来指定bin,include,lib文件夹的生成位置;如果不指定,默认安装在/usr/local下
4.重点来了!!!【ERROR: x264 not found using pkg-config】
如果使用prefix指定了以上路径,一定要进行以下操作,否则编译ffmpeg时会出上述问题
在/usr/local/x264/lib/pkgconfig/下有一个x264.pc文件,将它移动到/usr/share/pkgconfig下【pkg-config会搜索这个路径下的.pc文件】
sudo mv /usr/local/x264/lib/pkgconfig/x264.pc /usr/share/pkgconfig
最后,将x264放到系统环境变量中去:
sudo gedit /etc/profile
在末尾加上:export PATH=$PATH:/usr/local/x264/bin
然后执行:source /etc/profile
二.编译ffmpeg-6.0
1.官网下载源码(http://ffmpeg.org/),我下载到了~/Downloads下
2.解压并移动
sudo tar xvJf ffmpeg-6.0.tar.xz
sudo mv ffmpeg-6.0 /usr/local
3.ffmpeg-6.0的配置和编译
sudo ./configure --enable-static --enable-gpl --enable-libx264 --prefix=/usr/local/ffmpeg-6.0
--pkgconfigdir=/usr/share/pkgconfig
make -j16
sudo make install
4.系统环境变量设置
sudo gedit /etc/profile
export PATH=$PATH:/usr/local/ffmpeg-6.0/bin
source /etc/profile
三.测试
输入ffmpeg -version,如果出现以下内容则说明ffmpeg编译成功:

ubuntu22.04下编译ffmpeg-6.0,并且激活x264编码功能。记录一下踩坑(ERROR: x264 not found using pkg-config)的更多相关文章
- VoIP应用在Ubuntu 14.04下编译FFmpeg libX264及PJSIP
PJSIP是一个开源的SIP协议栈.它支持多种SIP的扩展功能,可说算是最目前流行的SIP协议栈之一了. 它实现了SIP.SDP.RTP.STUN.TURN和ICE.PJSIP作为基于SIP的一个多 ...
- 在ubuntu 10.04下编译ffmpeg
最近准备研究ffmpeg-2.0.1. 那得先运行起来看看效果吧. 首先去官网下载源码: 然后 解压=> ./configure => make OK . 1. 编译好后,发现没有ffp ...
- Ubuntu18.04下编译安装Guitarix 0.37.3
准备工作 源文件下载 https://sourceforge.net/projects/guitarix/files/guitarix/ 安装依赖. 参考 https://sourceforge.ne ...
- Ubuntu16.04下编译安装OpenCV3.4.0(C++ & python)
Ubuntu16.04下编译安装OpenCV3.4.0(C++ & python) 前提是已经安装了python2,python3 1)安装各种依赖库 sudo apt-get update ...
- 在Ubuntu18.04下编译出ffmpeg(支持推流H265成rtmp)
Ubuntu18.04下编译libx264.libx265.libfdk_aac和ffmpeg 一.编译x264库 二.编译fdk-aac库 三.编译x265库 四.编译FFmpeg源码 五.设置环境 ...
- ubuntu14.04下编译安装ambari-2.4.2.0
ubuntu14.04下编译安装ambari-2.4.2.0 编译前的准备工作 准备工作有: 系统参数 系统依赖(编译环境) 离线安装包 java环境 maven环境 Nodejs环境 git环境 a ...
- Android 环境下编译FFmpeg
Android 环境下编译FFmpeg 开发环境:Ubuntu 12.04.2 LTS , android-sdk-linux, android-ndk-r8e 一 .X264 编译 1. X2 ...
- 在Windows下编译FFmpeg详细说明
MinGW:一个可自由使用和自由发布的Windows特定头文件和使用GNC工具集导入库的集合,允许你生成本地的Windows程序而不需要第三方C运行时 MinGW,即 Minimalist GNU F ...
- [置顶] ubuntu12.04下编译opencv程序
ubuntu12.04下编译opencv程序 1.在ubuntu下安装好 opencv后(建议使用apt-get install 来安装) 2.使用程序FaceExaple.c来进行测试程序 #inc ...
- ubuntu16.04下编译安装vim8.1
之前写过一篇centos7下编译安装vim8.0的教程,ubuntu16.04相比centos7下安装过程不同在于依赖包名字的不同,其余都是一样.下面给出ubuntu16.04编译安装vim8.0需要 ...
随机推荐
- [Java EE]辨析: POJO(PO / DTO / VO) | BO/DO | DAO
概念不清,会很影响开发中的逻辑性和条理性,进而影响接口设计,代码编写的质量. 网络上大家对这些个概念的探究很多,但终究没有一个统一的说法. 不论哪家解释,我觉得最重要的是: 1)词汇之间的解释统一: ...
- 多表查询和python操作mysql
目录 多表查询的两种方法 方法1:连表操作 方法2:子查询 小知识点补充说明 可视化软件NaviCat 多表查询练习题 1.查询所有的课程的名称以及对应的任课老师姓名 2.查询平均成绩大于八十分的同学 ...
- Redis(八)redis新功能
redis6新功能 1 ACL Redis ACL是AccessControlList(访问控制表)的缩写,该功能允许根据可以执行的命令和访问的键来限制某些连接. 2 基本命令 acl help &g ...
- Redis(一)五种基本数据类型
1 NoSQl数据库 1.1 技术的发展 技术的分类: ①解决功能性问题:javase ②解决扩展性问题:框架 ③解决性能问题:redis 1.2 NoSQL数据库概述 NoSQL(Not Only ...
- 基于Python的爬虫案例
案例1:使用爬虫爬取京东华为手机用户评论 本案例借鉴哔哩哔哩博客主视频教程,感谢其教程为我开启了爬虫之旅:https://www.bilibili.com/video/BV1Yt4y1Y7nt?t=3 ...
- 深谈Spring如何解决Bean的循环依赖
1. 什么是循环依赖 Java循环依赖指的是两个或多个类之间的相互依赖,形成了一个循环的依赖关系,这会导致程序编译失败或运行时出现异常.下面小岳就带大家来详细分析下Java循环依赖. 简单来讲就是:假 ...
- Docker容器网络(基本网络模型)
解析Docker的4种容器网络 默认网络模型 先介绍默认的网络模型: 安装docker后,输入ifconfig就会发现多了网卡中多了一个docker0: $ ifconfig docker0: fla ...
- [Opencv-C++] 3. opencv数据类型
文章目录 Point类 cv::Scalar类 size类 cv::Rect类 cv::RotatedRect类 固定矩阵类 固定向量类 复数类 工具函数 模板结构 Point类 在大多数程序中,Po ...
- 分享Zeal的全套离线文档
鉴于Zeal自身的下载速度... 为了方便大家,现在把我自己下载好的Zeal离线文档全部分享出来 百度网盘链接:https://pan.baidu.com/s/19WeEWij3evnuMWhzbHu ...
- pyhton内置函数
内置函数 1.type(变量名)-> class 查看变量的数据类型 2.print(self, *args, sep=' ', end='\n', file=None) sep:指定多个参数以 ...