RIDK MSYS 密钥失败

RIDK MSYS Key failing

我想在我的 Bootcamp windows Mac 笔记本电脑上 rails 网络应用程序上开发 运行 ruby。 我正在使用 rubyinstaller 和 railsinstaller,但安装总是在某些我不知道的 PGP 密钥检查时中断。

尝试安装 ruby 安装程序时遇到问题

        _____       _           _____           _        _ _         ___
    |  __ \     | |         |_   _|         | |      | | |       |__ \
    | |__) |   _| |__  _   _  | |  _ __  ___| |_ __ _| | | ___ _ __ ) |
    |  _  / | | | '_ \| | | | | | | '_ \/ __| __/ _` | | |/ _ \ '__/ /
    | | \ \ |_| | |_) | |_| |_| |_| | | \__ \ || (_| | | |  __/ | / /_
    |_|  \_\__,_|_.__/ \__, |_____|_| |_|___/\__\__,_|_|_|\___|_||____|
                        __/ |           _
                       |___/          _|_ _  __   | | o __  _| _     _
                                       | (_) |    |^| | | |(_|(_)\^/_>
    
       1 - MSYS2 base installation
       2 - MSYS2 system update (optional)
       3 - MSYS2 and MINGW development toolchain
    
    Which components shall be installed? If unsure press ENTER [1,3] 1
    
    > sh -lc true
    'C:\Windows\system32\drivers\etc\hosts' -> '/etc/hosts'
    'C:\Windows\system32\drivers\etc\protocol' -> '/etc/protocols'
    'C:\Windows\system32\drivers\etc\services' -> '/etc/services'
    'C:\Windows\system32\drivers\etc\networks' -> '/etc/networks'
    gpg: /etc/pacman.d/gnupg/trustdb.gpg: trustdb created
    gpg: no ultimately trusted keys found
    gpg: starting migration from earlier GnuPG versions
    gpg: porting secret keys from '/etc/pacman.d/gnupg/secring.gpg' to gpg-agent
    gpg: migration succeeded
    gpg: Generating pacman keyring master key...
    gpg: key XXXXXXXXXXXXXXXXXX marked as ultimately trusted
    gpg: directory '/etc/pacman.d/gnupg/openpgp-revocs.d' created
    gpg: revocation certificate stored as '/etc/pacman.d/gnupg/openpgp-revocs.d/CXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.rev'
    gpg: Done
    ==> Updating trust database...
    gpg: marginals needed: 3  completes needed: 1  trust model: pgp
    gpg: depth: 0  valid:   1  signed:   0  trust: 0-, 0q, 0n, 0m, 0f, 1u
    ==> Appending keys from msys2.gpg...
    ==> Locally signing trusted keys in keyring...
      -> Locally signing key XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX...
      -> Locally signing key XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX...
      -> Locally signing key XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX...
      -> Locally signing key XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX...
    ==> Importing owner trust values...
    gpg: setting ownertrust to 4
    gpg: setting ownertrust to 4
    gpg: setting ownertrust to 4
    gpg: inserting ownertrust of 4
    ==> Updating trust database...
    gpg: marginals needed: 3  completes needed: 1  trust model: pgp
    gpg: depth: 0  valid:   1  signed:   4  trust: 0-, 0q, 0n, 0m, 0f, 1u
    gpg: depth: 1  valid:   4  signed:   3  trust: 0-, 0q, 0n, 4m, 0f, 0u
    gpg: depth: 2  valid:   3  signed:   0  trust: 3-, 0q, 0n, 0m, 0f, 0u
    gpg: refreshing 8 keys from hkps://hkps.pool.sks-keyservers.net
    gpg: keyserver refresh failed: General error
    ==> ERROR: A specified local key could not be updated from a keyserver.
    --> Installing /usr/share/info/assuan.info.gz ... done
    --> Installing /usr/share/info/autoconf.info.gz ... done
    --> Installing /usr/share/info/autoconf2.13.info.gz ... done
    --> Installing /usr/share/info/autogen.info.gz ... done
    --> Installing /usr/share/info/automake1.10.info.gz ... done
    --> Installing /usr/share/info/automake1.11.info.gz ... done
    --> Installing /usr/share/info/automake1.12.info.gz ... done
    --> Installing /usr/share/info/automake1.13.info.gz ... done
    --> Installing /usr/share/info/automake1.14.info.gz ... done
    --> Installing /usr/share/info/automake1.15.info.gz ... done
    --> Installing /usr/share/info/automake1.16.info.gz ... done
    --> Installing /usr/share/info/automake1.6.info.gz ... done
    --> Installing /usr/share/info/automake1.7.info.gz ... done
    --> Installing /usr/share/info/automake1.8.info.gz ... done
    --> Installing /usr/share/info/automake1.9.info.gz ... done
    --> Installing /usr/share/info/automake-history1.12.info.gz ...install-info: warning: no info dir entry in `/usr/share/info/automake-history1.12.info.gz'
     done
    --> Installing /usr/share/info/automake-history1.13.info.gz ...install-info: warning: no info dir entry in `/usr/share/info/automake-history1.13.info.gz'
     done
    --> Installing /usr/share/info/automake-history1.14.info.gz ...install-info: warning: no info dir entry in `/usr/share/info/automake-history1.14.info.gz'
     done
    --> Installing /usr/share/info/automake-history1.15.info.gz ...install-info: warning: no info dir entry in `/usr/share/info/automake-history1.15.info.gz'
     done
    --> Installing /usr/share/info/automake-history1.16.info.gz ...install-info: warning: no info dir entry in `/usr/share/info/automake-history1.16.info.gz'
     done
    --> Installing /usr/share/info/autosprintf.info.gz ... done
    --> Installing /usr/share/info/bash.info.gz ... done
    --> Installing /usr/share/info/coreutils.info.gz ... done
    --> Installing /usr/share/info/diffutils.info.gz ... done
    --> Installing /usr/share/info/find.info.gz ... done
    --> Installing /usr/share/info/find-maint.info.gz ... done
    --> Installing /usr/share/info/flex.info.gz ... done
    --> Installing /usr/share/info/gawk.info.gz ... done
    --> Installing /usr/share/info/gawkinet.info.gz ... done
    --> Installing /usr/share/info/gawkworkflow.info.gz ... done
    --> Installing /usr/share/info/gcrypt.info.gz ... done
    --> Installing /usr/share/info/gdbm.info.gz ... done
    --> Installing /usr/share/info/gettext.info.gz ... done
    --> Installing /usr/share/info/gmp.info.gz ... done
    --> Installing /usr/share/info/gnupg.info.gz ... done
    --> Installing /usr/share/info/gnutls.info.gz ... done
    --> Installing /usr/share/info/gnutls-guile.info.gz ... done
    --> Installing /usr/share/info/gpgme.info.gz ... done
    --> Installing /usr/share/info/grep.info.gz ... done
    --> Installing /usr/share/info/gzip.info.gz ... done
    --> Installing /usr/share/info/history.info.gz ... done
    --> Installing /usr/share/info/inetutils.info.gz ... done
    --> Installing /usr/share/info/info-stnd.info.gz ... done
    --> Installing /usr/share/info/ksba.info.gz ... done
    --> Installing /usr/share/info/libffi.info.gz ... done
    --> Installing /usr/share/info/libgomp.info.gz ... done
    --> Installing /usr/share/info/libidn2.info.gz ... done
    --> Installing /usr/share/info/libquadmath.info.gz ... done
    --> Installing /usr/share/info/libtasn1.info.gz ... done
    --> Installing /usr/share/info/libtool.info.gz ... done
    --> Installing /usr/share/info/libunistring.info.gz ... done
    --> Installing /usr/share/info/m4.info.gz ... done
    --> Installing /usr/share/info/make.info.gz ... done
    --> Installing /usr/share/info/mpfr.info.gz ... done
    --> Installing /usr/share/info/nettle.info.gz ... done
    --> Installing /usr/share/info/pinentry.info.gz ... done
    --> Installing /usr/share/info/readline.info.gz ... done
    --> Installing /usr/share/info/rluserman.info.gz ... done
    --> Installing /usr/share/info/sed.info.gz ... done
    --> Installing /usr/share/info/tar.info.gz ... done
    --> Installing /usr/share/info/texinfo.info.gz ... done
    --> Installing /usr/share/info/time.info.gz ... done
    --> Installing /usr/share/info/wget.info.gz ... done
    --> Installing /usr/share/info/which.info.gz ... done
    
    
    
    ###################################################################
    #                                                                 #
    #                                                                 #
    #                   C   A   U   T   I   O   N                     #
    #                                                                 #
    #                  This is first start of MSYS2.                  #
    #       You MUST restart shell to apply necessary actions.        #
    #                                                                 #
    #                                                                 #
    ###################################################################
    
    
    MSYS2 seems to be properly installed
    
       1 - MSYS2 base installation
       2 - MSYS2 system update (optional)
       3 - MSYS2 and MINGW development toolchain
    
    Which components shall be installed? If unsure press ENTER [] 2
    
    > sh -lc true
    MSYS2 seems to be properly installed
    Remove catgets to avoid conflicts while update  ...
    > pacman -Rdd catgets libcatgets --noconfirm
    error: target not found: catgets
    error: target not found: libcatgets
    MSYS2 system update (optional) part 1  ...
    > pacman -Syu --needed --noconfirm
    :: Synchronizing package databases...
     mingw32                                     549.5 KiB  6.79 MiB/s 00:00 [#######################################] 100%
     mingw32.sig                                 438.0   B   428 KiB/s 00:00 [#######################################] 100%
    error: mingw32: key "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" is unknown
    :: Import PGP key XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX? [Y/n]
    error: key "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" could not be looked up remotely
    error: failed to update mingw32 (invalid or corrupted database (PGP signature))
     mingw64                                     551.3 KiB  6.41 MiB/s 00:00 [#######################################] 100%
     mingw64.sig                                 438.0   B  0.00   B/s 00:00 [#######################################] 100%
    error: mingw64: key "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" is unknown
    :: Import PGP key XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX? [Y/n]
    error: key "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" could not be looked up remotely
    error: failed to update mingw64 (invalid or corrupted database (PGP signature))
     msys                                        229.7 KiB  5.47 MiB/s 00:00 [#######################################] 100%
     msys.sig                                    438.0   B  0.00   B/s 00:00 [#######################################] 100%
    error: msys: key "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" is unknown
    :: Import PGP key XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX? [Y/n]
    error: key "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" could not be looked up remotely
    error: failed to update msys (invalid or corrupted database (PGP signature))
    error: failed to synchronize all databases
    MSYS2 system update (optional) failed
    Installation failed: pacman failed
    
       1 - MSYS2 base installation
       2 - MSYS2 system update (optional)
       3 - MSYS2 and MINGW development toolchain
    
    Which components shall be installed? If unsure press ENTER [] 3
    
    > sh -lc true
    MSYS2 seems to be properly installed
    Install MSYS2 and MINGW development toolchain ...
    > pacman -S --needed --noconfirm autoconf autoconf2.13 autogen automake-wrapper automake1.10 automake1.11 automake1.12 automake1.13 automake1.14 automake1.15 automake1.6 automake1.7 automake1.8 automake1.9 diffutils file gawk grep libtool m4 make patch pkg-config sed texinfo texinfo-tex wget mingw-w64-x86_64-binutils mingw-w64-x86_64-crt-git mingw-w64-x86_64-gcc mingw-w64-x86_64-gcc-libs mingw-w64-x86_64-headers-git mingw-w64-x86_64-libmangle-git mingw-w64-x86_64-libwinpthread-git mingw-w64-x86_64-make mingw-w64-x86_64-pkg-config mingw-w64-x86_64-tools-git mingw-w64-x86_64-winpthreads-git
    error: mingw32: key XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" is unknown
    :: Import PGP key XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX? [Y/n]
    error: key "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" could not be looked up remotely
    error: mingw64: key "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" is unknown
    :: Import PGP key XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX? [Y/n]
    error: key "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" could not be looked up remotely
    error: msys: key "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" is unknown
    :: Import PGP key XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX? [Y/n]
    error: key "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" could not be looked up remotely
    error: database 'mingw32' is not valid (invalid or corrupted database (PGP signature))
    error: database 'mingw64' is not valid (invalid or corrupted database (PGP signature))
    error: database 'msys' is not valid (invalid or corrupted database (PGP signature))
    Install MSYS2 and MINGW development toolchain failed
    Installation failed: pacman failed

当 运行ning "rails new appname"

时会出现进一步的问题
Fetching sqlite3 1.4.2
Installing sqlite3 1.4.2 with native extensions
error: mingw32: key "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" is unknown
error: key "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" could not be looked up remotely
error: mingw64: key "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" is unknown
error: key "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" could not be looked up remotely
error: msys: key "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" is unknown
error: key "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" could not be looked up remotely
error: database 'mingw32' is not valid (invalid or corrupted database (PGP signature))
error: database 'mingw64' is not valid (invalid or corrupted database (PGP signature))
error: database 'msys' is not valid (invalid or corrupted database (PGP signature))
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

current directory:
C:/Ruby26-x64/lib/ruby/gems/2.6.0/gems/sqlite3-1.4.2/ext/sqlite3
C:/Ruby26-x64/bin/ruby.exe -I C:/Ruby26-x64/lib/ruby/site_ruby/2.6.0 -r
./siteconf20200909-13048-140wmk3.rb extconf.rb
checking for sqlite3.h... no
sqlite3.h is missing. Install SQLite3 from http://www.sqlite.org/ first.
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers.  Check the mkmf.log file for more details.  You may
need configuration options.

Provided configuration options:
        --with-opt-dir
        --without-opt-dir
        --with-opt-include
        --without-opt-include=${opt-dir}/include
        --with-opt-lib
        --without-opt-lib=${opt-dir}/lib
        --with-make-prog
        --without-make-prog
        --srcdir=.
        --curdir
        --ruby=C:/Ruby26-x64/bin/$(RUBY_BASE_NAME)
        --with-sqlcipher
        --without-sqlcipher
        --with-sqlite3-config
        --without-sqlite3-config
        --with-pkg-config
        --without-pkg-config
        --with-sqlcipher
        --without-sqlcipher
        --with-sqlite3-dir
        --without-sqlite3-dir
        --with-sqlite3-include
        --without-sqlite3-include=${sqlite3-dir}/include
        --with-sqlite3-lib
        --without-sqlite3-lib=${sqlite3-dir}/lib

To see why this extension failed to compile, please check the mkmf.log which can
be found here:

C:/Ruby26-x64/lib/ruby/gems/2.6.0/extensions/x64-mingw32/2.6.0/sqlite3-1.4.2/mkmf.log

extconf failed, exit code 1

Gem files will remain installed in
C:/Ruby26-x64/lib/ruby/gems/2.6.0/gems/sqlite3-1.4.2 for inspection.
Results logged to
C:/Ruby26-x64/lib/ruby/gems/2.6.0/extensions/x64-mingw32/2.6.0/sqlite3-1.4.2/gem_make.out

An error occurred while installing sqlite3 (1.4.2), and Bundler cannot continue.
Make sure that `gem install sqlite3 -v '1.4.2' --source 'https://rubygems.org/'`
succeeds before bundling.

In Gemfile:
  sqlite3
         run  bundle binstubs bundler
Could not find gem 'sqlite3 (~> 1.4) x64-mingw32' in any of the gem sources
listed in your Gemfile.
       rails  webpacker:install
Could not find gem 'sqlite3 (~> 1.4) x64-mingw32' in any of the gem sources listed in your Gemfile.
Run `bundle install` to install missing gems.

1st for RIDK, just 运行 1,3 安装时输入

第 2 个 SQLite3 问题,遵循以下 link 降低 gem 文件中的 sqlite 版本的解决方案和 运行ning “捆绑安装”

在我的例子中(在 Windows 10)运行 命令 shell 作为管理员然后 ridk install 工作正常。