RIDK MSYS密钥失败

问题描述

我想在Bootcamp Windows Mac笔记本电脑上开发并运行Rails Web应用程序上的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-,1u
    gpg: depth: 1  valid:   4  signed:   3  trust: 0-,4m,0u
    gpg: depth: 2  valid:   3  signed:   0  trust: 3-,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

运行“ 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.

解决方法

在我的情况下(在 Windows 10 上)以管理员身份运行命令 shell,然后 ridk install 工作正常。

,

第一个是RIDK,安装时只需运行1,3个输入

第2个SQLite3问题,请遵循以下链接解决方案,以减少gem文件中的sqlite版本并运行“捆绑安装” Rails error on windows 10 (An error occurred while installing sqlite3 (1.4.1),and Bundler cannot continue)