FFmpeg开发笔记(五)更新MSYS的密钥环

简介: 在《FFmpeg开发实战:从零基础到短视频上线》中,介绍了解决MSYS下FFmpeg交叉编译时遇到的密钥环过期问题。当尝试安装mingw-w64-x86_64-toolchain时,可能出现签名不被信任的错误。这由于MSYS密钥环有效期仅为150天,过期后需更新。通过`pacman-key --list-sigs`检查密钥状态,发现密钥已过期。解决方法是访问`https://repo.msys2.org/msys/x86_64/`下载msys2-keyring最新版,然后验证并安装更新。更新后,密钥环有效期将延长至2024年4月10日,确保能正常安装交叉编译工具链。

《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开发实战:从零基础到短视频上线》一书。

目录
相关文章
|
编解码 搜索推荐 图形学
Premiere2023精简版一键下载无须激活版PR下载
Adobe公司Premiere 简称为pr,这是一款适用于电影、电视和 Web 的业界领先视频编辑软件,通过它不仅可以帮助用户对各种视频进行剪辑、旋转、分割、合并、字幕添加、背景音乐等基础的处理,还能帮助用户进行视频颜色校正、颜色分级、稳定镜头、调整层、更改片段的持续时间和速度、效果预设等操作,功能十分的全面强大。当然,不仅如此其中不但内置了海量的素材供用户自由使用来更好的帮助你制作出精美的影片和视频,还能根据自己的需求直接与Ps、Au、Ae等程序进行无缝协作。PR 最新版本号是 2023,新增功能主要有丰富、直观的导入和导出模式,具有 Frame.io 集成的新审阅工作区,离线语音转文本新增
910 0
|
Rust IDE NoSQL
Clion2022安装破解与激活教程,亲测可用
CLion是JetBrains公司旗下发布的一款跨平台C/C++/Rust IDE开发工具。
10684 1
|
16天前
|
Linux Android开发 iOS开发
FFmpeg开发笔记(七)欧拉系统编译安装FFmpeg
FFmpeg跨平台支持多系统,包括Linux、macOS、Windows和Android。官方提供[编译指南](https://trac.ffmpeg.org/wiki/CompilationGuide)。在CentOS上,编译涉及安装多个依赖,如NASM、Yasm、libx264、libx265、libfdk_aac等。同样,在EulerOS上,需安装相关工具并分别编译x264、x265和FFmpeg。详细FFmpeg开发内容可参考《FFmpeg开发实战:从零基础到短视频上线》。
25 1
FFmpeg开发笔记(七)欧拉系统编译安装FFmpeg
|
11月前
银商TMS平台秘钥自动下载并形成文件工具
银商TMS平台秘钥自动下载并形成文件工具
Xmind2022最新版破解与激活教程,操作简单
Xmind 是一款 全功能 的思维导图和头脑风暴软件。像大脑的瑞士军刀一般,助你理清思路,捕捉创意。
3387 0
XMind2022最新版破解激活教程,亲测可用
Xmind 是一款 全功能 的思维导图和头脑风暴软件。像大脑的瑞士军刀一般,助你理清思路,捕捉创意。
12548 1
|
算法 Java 编译器
Unity 之 获取发布APK的SHA1值步骤详解
Unity获取发布APK的SHA1值步骤详解, 以Unity2019为例进行解析。
638 0
Unity 之 获取发布APK的SHA1值步骤详解
|
安全
[经验]使用Keil MDK+Jlink-OB下载失败的解决办法
[经验]使用Keil MDK+Jlink-OB下载失败的解决办法
456 0
[经验]使用Keil MDK+Jlink-OB下载失败的解决办法
|
iOS开发
iOS逆向小知识: 将功能独立的tweak 合并到同一个deb 包
iOS逆向小知识: 将功能独立的tweak 合并到同一个deb 包
229 0
iOS逆向小知识: 将功能独立的tweak 合并到同一个deb 包