Rails プロジェクトに mysql2 をインストールしようとしたときの PGP の重大な問題
P粉155832941
2023-09-01 23:57:11
<p>Rails プロジェクトのすべての gem をローカルにインストールしようとしています。 </p>
<p>mysql2 に問題があります。インストールしようとすると、次のエラーが表示されます: </p>
<pre class="brush:php;toolbar:false;">mysql2-0.5.5.gem を取得しています
MSYS/MINGW の PATH を一時的に強化しています...
必要な msys2 パッケージのインストール: mingw-w64-x86_64-libmariadbclient
エラー: mingw32: キー「5F944B027F7FE2091985AA2EFA11531AA0AA7F57」が不明です
エラー: キー「5F944B027F7FE2091985AA2EFA11531AA0AA7F57」をリモートで検索できませんでした
エラー: mingw64: キー「5F944B027F7FE2091985AA2EFA11531AA0AA7F57」が不明です
エラー: キー「5F944B027F7FE2091985AA2EFA11531AA0AA7F57」をリモートで検索できませんでした
エラー: msys: キー「5F944B027F7FE2091985AA2EFA11531AA0AA7F57」が不明です
エラー: キー「5F944B027F7FE2091985AA2EFA11531AA0AA7F57」をリモートで検索できませんでした
エラー: データベース 'mingw32' が無効です (データベース (PGP 署名) が無効または破損しています)
エラー: データベース 'mingw64' が無効です (データベース (PGP 署名) が無効または破損しています)
エラー: データベース 'msys' が無効です (データベース (PGP 署名) が無効または破損しています)
pacman は次の出力で失敗しました。
ネイティブ拡張機能の構築: '--with-mysql-lib="C:\Program Files\MySQL\MySQL Server 8.0\lib" --with-mysql-include="C:\Program Files\MySQL\MySQL Server 8.0\含める'
これには少し時間がかかるかもしれません...
エラー: mysql2 のインストール中にエラーが発生しました:
エラー: gem ネイティブ拡張機能のビルドに失敗しました。</pre>
<p>次に、<code>pacman -Syu</code> を実行しようとしましたが、同じエラーが発生し、PGP キーをインポートするように求められませんでした。 </p>
<p>そこで、MSI キーリング GitHub から pacman-key --add </code> に基づいて手動でキーをインポートしてみました。次に、<code>pacman-key --edit-key</code> を使用して信頼を Ultimate に変更しました。</p>
<p>しかし、今度は別のエラーが発生します: </p>
<pre class="brush:php;toolbar:false;">必要な msys2 パッケージのインストール: mingw-w64-x86_64-libmariadbclient
エラー: ファイル /var/lib/pacman/sync/mingw32.db を開けませんでした: 子プロセスがステータス 127 で終了しました
エラー: ファイル /var/lib/pacman/sync/mingw64.db を開けませんでした: 子プロセスがステータス 127 で終了しました
エラー: ファイル /var/lib/pacman/sync/msys.db を開けませんでした: 子プロセスがステータス 127 で終了しました
エラー: ターゲットが見つかりません: mingw-w64-x86_64-libmariadbclient
pacman は次の出力で失敗しました。
ネイティブ拡張機能の構築: '--with-mysql-lib="C:\Program Files\MySQL\MySQL Server 8.0\lib" --with-mysql-include="C:\Program Files\MySQL\MySQL Server 8.0\含める'
これには少し時間がかかるかもしれません...
エラー: mysql2 のインストール中にエラーが発生しました:
エラー: gem ネイティブ拡張機能のビルドに失敗しました。</pre>
<p>この方法で間違ったキーを追加しているのか、それともエラーが他の原因で発生しているのかわかりません。私はここ数日間これに苦労していて、少し迷っています。誰か助けてくれませんか? </p>
インストールした MSYS2 または pacman パッケージ マネージャーに問題がある可能性があります。ステータス 127 で終了する子プロセスは、さまざまな問題を示している可能性があります。
このエラーを解決するために試せることは次のとおりです:
これで問題が解決しない場合は、MSYS2 を再インストールしてみてください。
別の方法としては、pacman キャッシュを削除して再試行することが考えられます。これは次の方法で実行できます:
mingw-w64-x86_64-libmariadbclient にエラーがあることに注意してください。必要な開発パッケージがすべてインストールされていることを確認する必要があります。
リーリー開発パッケージも存在する可能性があります。 Ubuntuでは「sudo apt install libmariadb-dev」または同様のものですが、Arch Linuxについてはわかりません。