2011-01-12 8 views
0

Gemfileにmysqlを追加しようとしていて、バンドルインストールを実行中にインストールしようとしています。次のエラーが表示されます。os xにmysql gemをインストールしようとしたときにエラーが発生しました

Installing mysql (2.8.1) with native extensions /Library/Ruby/Site/1.8/rubygems/installer.rb:483:in `build_extensions': ERROR: Failed to build gem native extension. (Gem::Installer::ExtensionBuildError) 

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb 
mkmf.rb can't find header files for ruby at /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/ruby.h 

また、gem mysqlの前にsudoを実行してみました。どのように問題を解決するかについての考えはすばらしいだろう。

おかげで、 マシュー

+0

http://stackoverflow.com/questions/41134/how-do-i-install-the-mysql-ruby-gem-under-os-x-10-5-4 – Mark

答えて

0

あなたはOS Xの開発ツールがインストールされていますか? Xcodeがない場合は、RubyやMySQLのヘッダファイルなどの主要なコンポーネントがないかもしれません。

デフォルトのシステムRubyを使用している場合は、MacPortsまたはRVMのいずれかを使用してインストールを管理してください。個人的に私はMacPortsの方が好きです。なぜなら、これは、必要とされるさまざまなシステムライブラリをインストールするのにも役立ちます。

MacPortsを使用してインストールする方法はexampleです。以前はダーウィン港と呼ばれていましたが、原則は同じです。

+0

私は自作を使用し、私はルビー1.8.7とレール3.0.2を実行しています。私は開発者用ツールをインストールしています。私が最後に更新したのは2010年11月頃か何かだったと思います。 – mattwallace

1

Tadmanが述べたように、これを動作させるには開発ツールをインストールする必要があります。しかし、エラーメッセージがあなたにいくつかのmysqlヘッダファイルがないことを伝えています。私はあなたが64ビット(mac私は仮定?)システムom 32ビットを使用している場合私は知らない。 64ビットの場合、これを行うことができます:

ダウンロードmysql。 http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.51-osx10.6-x86_64.dmg/from/http://mirror.leaseweb.com/mysql/

正しいバインディングでgemをインストールします。 RVMで試したことはありませんでした。

sudo env ARCHFLAGS="-arch x86_64" gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config 
+0

私は間違ったアーキテクチャではなく、欠落したヘッダーファイルでリンカエラーが発生すると思いますが、正しいかもしれません。何かが欠けています。 – tadman

関連する問題