如何在腾讯云Ubuntu20.04LTS的linux环境下编译git的FFmpeg

本文详细记录了在Ubuntu云服务器上编译FFmpeg的过程,包括使用Git克隆源码、遇到的gcc无法创建可执行文件及找不到tests/Makefile的错误,以及解决方法。通过更换阿里云源、安装build-essential套件,最终成功配置并编译安装FFmpeg。
摘要由CSDN通过智能技术生成

简介

windows下编译ffmpeg据说得用cygwin虚拟环境,而且在之前我还把VS卸载了,手头上又有一个算法需要ffmpeg编译出来的libavformat,又不想在破旧的办公电脑上分出几个G内存重装虚拟机,于是我选择了云服务器,随便一搜索腾讯云的个人服务器只要40元一年,在经过实名认证后顺利下单,选择了ubuntu20.04LTS作为启动系统,原以为一切水到渠成,不成想…这里面的坑是真多啊,花了我一上午时间查找。。。那么我来介绍一下采坑无数后正确的安装方法吧。为了写这个,我还顺便重装了一下系统。

从0开始

首先的首先,给大家看一下我的云服务器配置,名称中的lw表示light weight,也就是我的这个服务器是轻量应用服务器(最便宜的,而且新用户专享),一年40。
在这里插入图片描述

点击左下角的一键登录,弹出了熟悉又陌生的命令行:
在这里插入图片描述
接下来先让我们把最新的ffmpeg Git下来:

git clone https://github.com/FFmpeg/FFmpeg.git

等待的同时先来看一下当前系统的目录结构,免得跟我一样找文件东找西找:
在这里插入图片描述
以系统根目录为/,我们当前的目录(也就是登录命令行就在的那个目录)其实是/home/lighthouse/…,当前目录下是没有文件的,所以ls命令啥也没有返回,我一开始还以为它坏了。。
经过漫长的等待clone好之后,不要急着make install,必报错,这里注意很多教程在make install之前都会先./configure配置一些东西,还会告诉你要安装yasm才不会报错之类的,根本就是扯淡!(他们根本不知道还有–disable-yasm这个选项)

中间报错

./configure报错:gcc is unable to create an executable file c compiler test failed
在这里插入图片描述
make报错:/tests/Makefile:No such file or directory, No rule to make target
在这里插入图片描述
这两条看似原因不相关,实际上只有一个原因:这个腾讯云服务器没有装C的基础组件,所以需要:

sudo apt-get install build-essential

会提示你安装大约73.7MB,然后输入Y就可安装,但是腾讯自家的源部分组件有可能会404,如果不行请多试几次,或者把源换成阿里源,怎么换源(装好没报错的请跳至下一部分)见如下:

cd /etc/apt #进入目录
sudo rm -f sources.list #强制删除原来的源
touch sources.list #创建新文件用来写入源
chmod 777 sources.list #赋予最大权限777,即三种用户都能读写
vi sources.list #用vi编辑器打开进行写入

vi的话输入i进入输入模式,在输入模式下鼠标右键粘贴以下内容:

deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse

deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse

再按esc退出输入模式,输入:wq(写入并保存,注意前面的:号),写好源之后别急着apt-get install,需要先:

sudo apt-get update

更新软件列表之后,再重复之前的sudo apt-get install build-essential即可。

最后一步

./configure --prefix=/home/lighthouse/ff --enable-pic --disable-yasm --enable-shared

先配置好你安装的目录–prefix=xxxxxxxxxx,后面的选项照抄就完事了,正常的情况会出现一整页的信息提醒你已经配置好了,然后再:

make install

在漫长的等待过后(中间可能会有一些warning信息是正常的)就成功的编译完成了!
如下图:
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值