《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开发实战:从零基础到短视频上线》一书。
1.本站内容仅供参考,不作为任何法律依据。用户在使用本站内容时,应自行判断其真实性、准确性和完整性,并承担相应风险。
2.本站部分内容来源于互联网,仅用于交流学习研究知识,若侵犯了您的合法权益,请及时邮件或站内私信与本站联系,我们将尽快予以处理。
3.本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
4.根据《计算机软件保护条例》第十七条规定“为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。”您需知晓本站所有内容资源均来源于网络,仅供用户交流学习与研究使用,版权归属原版权方所有,版权争议与本站无关,用户本人下载后不能用作商业或非法用途,需在24个小时之内从您的电脑中彻底删除上述内容,否则后果均由用户承担责任;如果您访问和下载此文件,表示您同意只将此文件用于参考、学习而非其他用途,否则一切后果请您自行承担,如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
5.本站是非经营性个人站点,所有软件信息均来自网络,所有资源仅供学习参考研究目的,并不贩卖软件,不存在任何商业目的及用途
暂无评论内容