FFmpeg开发笔记(五)更新MSYS的密钥环
《FFmpeg开发实战:从零基础到短视频上线》一书提到:使用MSYS对FFmpeg进行交叉编译时,需要事先安装交叉编译工具链,也就是执行下面命令。
pacman -S mingw-w64-x86_64-toolchain
一般情况可以正常安装交叉编译工具链,不过有时会提示错误“signature from "David Macek <david.macek.0@gmail.com>" is unknown trust”,这是因为MSYS安装之后的密钥环有效期只有150天左右,而工具链中的个别组件会检查密钥环是否有效。如果密钥环过了150天之后才安装工具链,MSYS就会报前面的错,意思是签名不被信任,这便是密钥环过期导致的。
执行下面命令查看密钥环的有效时间。
pacman-key --list-sigs
从上面命令的执行结果找到“david.macek.0@gmail.com”所在的那几行信息,如下所示。
pub rsa4096 2018-01-14 [SC] [过期于:2023-04-22]
87771331B3F1FF5263856A6D974C8BE49078F532
uid [ 过期 ] David Macek <david.macek.0@gmail.com>
sig 790AE56A1D3CFDDC 2020-06-19 David Macek (MSYS2 master key) <david.macek.0@gmail.com>
sig 5F92EFC1A47D45A1 2020-06-23 Alexey Pavlov (Alexpux) <alexpux@gmail.com>
sig F40D263ECA25678A 2020-06-25 Alexey Pavlov (Alexpux) <alexey.pawlow@gmail.com>
sig 755B8182ACD22879 2020-06-25 Christoph Reiter (MSYS2 master key) <reiter.christoph@gmail.com>
sig 3 974C8BE49078F532 2022-10-24 David Macek <david.macek.0@gmail.com>
根据上述的密钥环有效信息,得知“david.macek.0@gmail.com”对应的密钥环已于2023-04-22到期,可见确实出现了密钥环过期的问题。
若想解决密钥环过期的问题,要么更新密钥环,要么重新安装MSYS。采取更新密钥环方式的话,得先到以下网址寻找msys2-keyring的最新文件。
https://repo.msys2.org/msys/x86_64/
比如找到msys2-keyring的最新文件为msys2-keyring-1~20231013-1-any.pkg.tar.zst和msys2-keyring-1~20231013-1-any.pkg.tar.zst.sig,于是执行下面命令将这两个签名文件下载到本地。如果最新文件的日期发生变化,注意同步修改下面命令中的文件名。
curl -O https://repo.msys2.org/msys/x86_64/msys2-keyring-1~20231013-1-any.pkg.tar.zst
curl -O https://repo.msys2.org/msys/x86_64/msys2-keyring-1~20231013-1-any.pkg.tar.zst.sig

等待两个文件下载完毕,接着执行下面命令验证并配置密钥环。
pacman-key --verify msys2-keyring-1~20231013-1-any.pkg.tar.zst{.sig,}
pacman -U --config <(echo) msys2-keyring-1~20231013-1-any.pkg.tar.zst
上面命令的执行结果最后一行如下所示,可见密钥环的失效时间已经延长到了2024-04-10。
gpg: next trustdb check due at 2024-04-10
重新执行下面命令查看密钥环的有效时间。
pacman-key --list-sigs
从上面命令的执行结果找到“david.macek.0@gmail.com”所在的那几行信息,如下所示。
pub rsa4096 2018-01-14 [SC] [expires: 2024-04-10]
87771331B3F1FF5263856A6D974C8BE49078F532
uid [ full ] David Macek <david.macek.0@gmail.com>
sig 790AE56A1D3CFDDC 2020-06-19 David Macek (MSYS2 master key) <david.macek.0@gmail.com>
sig 5F92EFC1A47D45A1 2020-06-23 Alexey Pavlov (Alexpux) <alexpux@gmail.com>
sig F40D263ECA25678A 2020-06-25 Alexey Pavlov (Alexpux) <alexey.pawlow@gmail.com>
sig 755B8182ACD22879 2020-06-25 Christoph Reiter (MSYS2 master key) <reiter.christoph@gmail.com>
sig 3 974C8BE49078F532 2023-03-16 David Macek <david.macek.0@gmail.com>
sig 3 974C8BE49078F532 2023-10-13 David Macek <david.macek.0@gmail.com>
sub rsa4096 2018-01-14 [E] [expires: 2024-04-10]
sig 974C8BE49078F532 2023-03-16 David Macek <david.macek.0@gmail.com>
sig 974C8BE49078F532 2023-10-13 David Macek <david.macek.0@gmail.com>
sub rsa3072 2018-01-14 [S] [expires: 2024-04-10]
sig 974C8BE49078F532 2023-03-16 David Macek <david.macek.0@gmail.com>
sig 974C8BE49078F532 2023-10-13 David Macek <david.macek.0@gmail.com>
根据上述的密钥环有效信息,得知“david.macek.0@gmail.com”对应的密钥环将于2024-04-10到期,可见密钥环的有效期果然往后延长了150天(从当天开始往后150天,不是对上个失效日期简单相加)。更多详细的FFmpeg开发知识参见《FFmpeg开发实战:从零基础到短视频上线》一书。
FFmpeg开发笔记(五)更新MSYS的密钥环的更多相关文章
- FFmpeg开发笔记(五):ffmpeg解码的基本流程详解(ffmpeg3新解码api)
若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/ar ...
- FFmpeg开发笔记(三):ffmpeg介绍、windows编译以及开发环境搭建
前言 本篇章是对之前windows环境的补充,之前windows的是无需进行编译的,此篇使用源码进行编译,版本就使用3.4.8. FFmpeg简介 FFmpeg是领先的多媒体框架,能够解码 ...
- FFmpeg开发笔记(四):ffmpeg解码的基本流程详解
若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/ar ...
- FFmpeg开发笔记(九):ffmpeg解码rtsp流并使用SDL同步播放
前言 ffmpeg播放rtsp网络流和摄像头流. Demo 使用ffmpeg播放局域网rtsp1080p海康摄像头:延迟0.2s,存在马赛克 使用ffmpeg播放网络rtsp文件流 ...
- FFmpeg开发笔记(十):ffmpeg在ubuntu上的交叉编译移植到海思HI35xx平台
FFmpeg和SDL开发专栏(点击传送门) 上一篇:<FFmpeg开发笔记(九):ffmpeg解码rtsp流并使用SDL同步播放>下一篇:敬请期待 前言 将ffmpeg移植到海思H ...
- Django开发笔记五
Django开发笔记一 Django开发笔记二 Django开发笔记三 Django开发笔记四 Django开发笔记五 Django开发笔记六 1.页面继承 定义base.html: <!DOC ...
- FFmpeg开发笔记(一)搭建Linux系统的开发环境
对于初学者来说,如何搭建FFmpeg的开发环境是个不小的拦路虎,因为FFmpeg用到了许多第三方开发包,所以要先编译这些第三方源码,之后才能给FFmpeg集成编译好的第三方库.不过考虑到刚开始仅仅调用 ...
- React-Native开发笔记 持续更新
1.css单位转换px2dp 在做页面开发的时候习惯了用rem去做css单位,处理各种尺寸数据,到了React-Native里面做app开发时,rem就不好用了,这个时候就需要转换成另外一个单位,基本 ...
- FFmpeg开发笔记(二)搭建Windows系统的开发环境
由于Linux系统比较专业,个人电脑很少安装Linux,反而大都安装Windows系统,因此提高了FFmpeg的学习门槛,毕竟在Windows系统搭建FFmpeg的开发环境还是比较麻烦的.不过若有已经 ...
- OpenCV开发笔记(七十四):OpenCV3.4.1+ffmpeg3.4.8交叉编译移植到海思平台Hi35xx平台
前言 移植opencv到海思平台,opencv支持对视频进行解码,需要对应的ffmpeg支持. Ffmpeg的移植 Ffmpeg的移植请参考之前的文章:<FFmpeg开发笔记(十): ...
随机推荐
- SATA学习笔记——Transport Layer 概述
一.故事前传 在之前的文章中,我们有提到SATA主要包括:应用层(Application Layer), 传输层(Transport Layer),链路层(Link Layer)以及物理层(Physi ...
- Shadow DOM的理解
Shadow DOM的理解 Shadow DOM是HTML的一个规范,其允许在文档document渲染时插入一颗DOM元素子树,但是这棵子树不在主DOM树中,Shadow DOM如果按照英文翻译的话可 ...
- Idea:Fetch failed: fatal: Could not read from remote repository
今天在idea工具中fetch github仓库报错:Fetch failed: fatal: Could not read from remote repository 查了以下需要调整下setti ...
- leetcode 将有序数组转换为二叉搜索树
给你一个整数数组 nums ,其中元素已经按 升序 排列,请你将其转换为一棵 高度平衡 二叉搜索树. 高度平衡 二叉树是一棵满足「每个节点的左右两个子树的高度差的绝对值不超过 1 」的二叉树. 示例 ...
- 【Android逆向】破解看雪9月算法破解第三题
这题的目标是算法还原,并写出注册机 1. 9月份算法第一题.apk 安装到手机 2. 随意输入账号密码,提示错误 3. apk拖入到jadx中 public native boolean regist ...
- 以二进制文件安装K8S之环境准备
为了k8s集群能正常运行,需要先完成4项准备工作: 1.关闭防火墙 2.禁用SeLinux 3.关闭Swap 4.安装Docker 关闭防火墙 # 查看防火墙状态 getenforce #关闭防火墙, ...
- 学习go语言编程之函数
函数定义 函数的基本组成:关键字func,函数名,参数列表,返回值,函数体,返回语句. 示例如下: func Add(a int, b int) (ret int, err error) { if a ...
- File.delete()和Files.delete(Path path)的区别
文件删除时可以选择File.delete()和Files.delete(Path path),这两个方法到底有什么区别呢? //删除暂存的pdfFile file =new File(pdfFilen ...
- 详解SSL证书系列(1)什么是SSL证书?
你一定遇到过这种情况,打开一个网站,浏览器弹出警告"您与此网站之间建立的连接不安全.由于此连接不安全,因此信息(如密码或信用卡)不会安全地发送到此网站,并且可能被其他人截获或看到" ...
- 数据分析day01
数据分析三剑客 numpy pandas(重点) matplotlib numpy模块 NumPy(Numerical Python)是Python语言中做科学计算的基础库.重在于数值计算,也是大部分 ...