1. ホーム
  2. ruby

[解決済み] gemをインストールできない - makeが内部または外部のコマンド操作可能なプログラムまたはバッチファイルとして認識されない。

2022-02-13 07:04:18

質問事項

Windows 7 で ruby 1.9.3 を使って rspec-rails gem をインストールしようとしました。いくつかのjsonライブラリがインストールできないというエラーが発生しました。そこで、以下の手順で解決しました。 ソースはこちら json' ネイティブ gem はインストールされたビルドツールを必要とします。

  1. Rubyinstaller.org][3] から [Ruby 1.9.3][2] をダウンロードする。
  2. DevKitファイルを[rubyinstaller.org][3]からダウンロードする。
    • Ruby 1.9.3 の場合は、[DevKit-tdm-32-4.5.2-20110712-1620-sfx.exe][4] を使用してください。
  3. DevKitをパスC: \Ruby193DevKit に解凍する。
  4. 実行 cd C:\Ruby193\DevKit
  5. 実行 ruby dk.rb init
  6. 実行 ruby dk.rb review
  7. 実行 ruby dk.rb install

話を戻すと、以下のコマンドを実行することで、JSONをインストールすることができます(または、DevKitが正常にインストールされたかどうかをテストすることができます)。

gem install json --platform=ruby
ruby -rubygems -e "require 'json'; puts JSON.load('[42]').inspect"

上記の最初のステップを実行すると、次のようなエラーが発生します。

C:\Ruby193\DevKit>gem install json --platform=ruby
Temporarily enhancing PATH to include DevKit...
Building native extensions.  This could take a while...
ERROR:  Error installing json:
        ERROR: Failed to build gem native extension.

        C:/Ruby193/bin/ruby.exe extconf.rb
creating Makefile

make
'make' is not recognized as an internal or external command,
operable program or batch file.

Gem ファイルは C:/Ruby193/lib/ruby/gems/1.9.1/gems/json-1.8.1 にインストールされたまま、検査のために残ります。 結果は C:/Ruby193/lib/ruby/gems/1.9.1/gems/json-1.8.1/ext/json/ext/generator/gem_make.out にログ記録されます。

私は今、上記のエラーを解決しようとしています - 。

'make' is not recognized as an internal or external command, operable program or batch file. を使って make が内部コマンドまたは外部コマンドとして認識されない - Qt SDK - Windows

もし、どなたかが既にこの修正方法を知っているのであれば、どうか私を助けてください。gemsのインストールに苦労しており、何日も失敗しています。rubyはそんなに難しいのかと思っています。

DOSKEYのアプローチは失敗しました !!!

私はこうしました - Mingwをインストールし、その開発ツールや基本的なものをすべてインストールしました。そして、環境変数に C:\MinGWbin を追加して mingw32-make.exe を探しました。そして DOSKEY make=mingw32-make に続いて、rubyコマンドを実行しました。同じエラーが出ました。私は、rubyのコードが隠されたcmdウィンドウから生成され、それがコマンドが動作しない理由であると推測しています。DOSKEYは、実行したcmdウィンドウの中だけで有効です。

次のステップ - あまりいい感じではありませんが、、、、、、、、、、、、、、、、、を変更します。 mingw32-make.exe をmake.exeに追加して見てください。

新しいエラーで再び失敗しました -。

DevKitを含めるために一時的にPATHを拡張しています... ネイティブのビルド エクステンションを使用します。 これはしばらく時間がかかるかもしれません... ERROR: jsonのインストールに失敗しました。 ERROR: gem ネイティブエクステンションのビルドに失敗しました。

    C:/Ruby193/bin/ruby.exe extconf.rb creating Makefile

generator-i386-mingw32.def を生成して、generator.c をコンパイルしているところ。 generator.c:1:0 から含まれるファイル: ../fbuffer/fbuffer.h:5:18: fatal error: ruby.h: そのようなファイルやディレクトリはありません #include "ruby.h" コンパイルが終了しました。Makefile:204: ターゲット 'generator.o' のレシピは、make に失敗しました。*** [generator.o] エラー 1

Gem ファイルは C:/Ruby193/lib/ruby/gems/1.9.1/gems/json-1.8.1 は検査用です。結果 にログオンしています。 C:/Ruby193/lib/ruby/gems/1.9.1/gems/json-1.8.1/ext/json/ext/generator/gem_make.out

今、何をすればいいの?

解決方法は?

Windowsシステムでruby on railsをセットアップしようとしましたが、ruby本体とrailsをインストールするワンクリックのインストーラはありますが、多くのgemはposixベースのオペレーティングシステムに依存してコンパイルされるので、Windowsで実際の作業をするのは不可能に近いです。

私のアドバイスは、自分自身でLinuxシステムを入手すること、おそらくあなたのシステム上でunbuntuとデュアルブート、または次のような仮想PCソフトウェアを取得することでしょう。 1 などがあり、そこからrubyをインストールしてみてください。