web-dev-qa-db-ja.com

Sudo gem install jsonを試すと、次のエラーが表示されます

アプリを起動するにはJSON gemをインストールする必要がありますが、json gemをインストールしようとすると、以下のエラーが表示されます。誰かが私を助けてくれますか?私はRails 2.2.2とgems 1.3.1を使用しています。

Arions-macbook-pro:.ssh arion$ Sudo gem install json
Password:
Sorry, try again.
Password:
Building native extensions.  This could take a while...
ERROR:  Error installing json:
    ERROR: Failed to build gem native extension.

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/Ruby extconf.rb install json
can't find header files for Ruby.


Gem files will remain installed in /Library/Ruby/Gems/1.8/gems/json-1.1.4 for inspection.
Results logged to /Library/Ruby/Gems/1.8/gems/json-1.1.4/ext/json/ext/parser/gem_make.out
29
Aaron

Mavericksでは、次のようにコマンドラインからXcodeコマンドラインツールをインストールすることで、この問題を解決できます。

xcode-select --install

更新:インストールまたは更新した後、必ずライセンス契約に同意してください。

Sudo xcodebuild -license

21
Javid Jamae

この問題がある場合:

ERROR:  Error installing json:
ERROR: Failed to build gem native extension.

mac OS X搭載のMac(10.8.1 Mountain Lionでテスト済み)を使用している場合は、Mac App Store(または開発者アカウントがある場合はdeveloper.Apple.com)からXcodeをダウンロードする必要があります。無料のBTWで、次のことができます。 DMGインストーラーをダウンロード)

最新のXcodeバージョン(Xcode 4.4.1を使用しています)には、コマンドラインツールが含まれていません。次に、この追加パッケージをXcode内にインストールする必要があります。完了すると、問題が修正されます。

これを行うには、Xcodeを開き、[設定]> [ダウンロード]> [コンポーネント]に移動します。 「コマンドラインツール」をインストールします。完了です。これで、json Ruby gem。

enter image description here

13
Diego Freniche

Ruby開発ヘッダーがありません。これらをubuntuなどのOSにインストールするには、以下を使用する必要があります。

aptitude install Ruby1.8-dev
12
neomorphic

RubyヘッダーはベースにインストールされていませんRuby Mac OS Xにインストールします。これらはMac OS Xインストールディスク2にインストールされています。 XCodeツール。

インストールしたら、すべてうまくいきました!

[〜#〜] update [〜#〜]少なくともOS X 10.7.3以降、これは問題ではなくなり、「動作する」

MacBook-Pro:tmp$ Sudo gem install json
Password:
Building native extensions.  This could take a while...
Successfully installed json-1.6.5
1 gem installed
Installing ri documentation for json-1.6.5...
Installing RDoc documentation for json-1.6.5...
MacBook-Pro:tmp$ uname -a
4
Aaron

Xcodeコマンドラインツールをインストールすると、この問題が修正されます。

3
p01nd3xt3r

特定のgemには、適切にインストールするためにいくつかのRubyヘッダーファイルが必要です。これらのヘッダーファイルしない Lion(OSX 10.7)に付属しています。

また、Xcode 4(最新リリース)も含まないがこれらのヘッダーファイルをインストールすることもわかります。私はこれを試しました。

ソリューション- Mac OS Xを使用していると想定します(ターミナル出力に基づいているように見えます)。それを動作させるために、次のページからgcc をいくつかの開発者ツールでインストールしました

  • 訪問 https://github.com/kennethreitz/osx-gcc-installer
  • READMEまでスクロールし、適切なパッケージをダウンロードします(OSX 10.7または10.6の場合)
  • .pkgファイルを開き、インストーラーを実行します。

これで、gem installまたはbundle installを使用して、gemをインストールできるようになります。

オーバーヘッドこれに付属する他のジャンクが心配な場合は、以下に要約を示します。

  • gcc-便利
  • make-便利
  • clang-ObjectiveCに役立ちます
  • 開発者CLIツール(パージなど)-便利ですか?
  • DevSDK(ヘッダーなど)-必要なもの
2
adu

単純な google search はこれを明らかにします:

拡張機能またはgemをビルドしようとしたときにRubyエラーメッセージのヘッダーファイルが見つからない場合は、Rubyがヘッダーを見つけられないことを意味します。ファイル。

ヘッダーファイルはMac OS Xではデフォルトでは配信されません。インストール後にXcode Toolsパッケージをインストールする必要があります。 Leopard DVDのOptional Installs/Xcode Toolsディレクトリにあります。

2
Janco

自作を使用する場合は、brew doctor。コンパイルに必要なgccライブラリが古くなっているか、見つからない場合があります。

Warning: No compiler found in /usr/bin!
Warning: Your Xcode (4.2) is outdated

checking for gcc... /Developer/usr/bin/llvm-gcc
checking whether the C compiler works... no
configure: error: in `/private/tmp/freexl-apNF/freexl-1.0.0d':
configure: error: C compiler cannot create executables

LionとMountain Lionのユーザー向けに、Appleは、Xcode自体をインストールする必要なくインストールできるXcodeパッケージ用の公式のコマンドラインツールを提供するようになりました!Appleの開発者サイトからダウンロードできます https://developer.Apple.com/downloads/index.action 。それでもgcc-4.2が必要で、Homebrewを使用している場合は、homebrew/dupesのApple-gcc42パッケージを使用してインストールできます。

0