bootstrap 由于证书不匹配而失败

bootstrap fails due to a certificate mismatch

当 运行 ./bootstrap 在新克隆的存储库 (https://github.com/coreutils/coreutils) 中时,似乎 找不到它想要或不信任的一些文件 https://translationproject.org

./bootstrap: Bootstrapping from checked-out coreutils sources...
./bootstrap: consider installing git-merge-changelog from gnulib
./bootstrap: getting gnulib files...
Submodule 'gnulib' (git://git.sv.gnu.org/gnulib.git) registered for path 'gnulib'
Cloning into '/home/vagrant/coreutils/gnulib'...
Submodule path 'gnulib': checked out '0ac98783691bbf8212537ebe18ddb68feb22a760'
./bootstrap: getting translations into po/.reference for coreutils...
ERROR: The certificate of 'translationproject.org' is not trusted.
ERROR: The certificate of 'translationproject.org' has expired.

那么我要怎么做才能使我的系统信任证书并使其成功编译?

首先,获取证书:

wget --mirror --level=1 -nd -v -A.po -P 'po/.reference'
   https://translationproject.org/latest/coreutils/

然后使证书可信:

a) 要求 openssl 信任:

openssl s_client -connect translationproject.org:443 -CApath /etc/ssl/certs -showcerts </dev/null 2>/dev/null

b) 要求证书工具信任

certtool --verbose --verify --infile=/tmp/translationproject.org.certs

终于可以./bootstrap使用成功了