2012-07-29 130 views
1

如果它有什麼區別,我只是更新到Mountain Lion,我不知道這是否會讓這個過程複雜化。在OSX上安裝mysql gem存在困難

我想開始使用將連接到MySql數據庫的Sinatra應用程序。我有一個Gemfile中建立並正在運行一個bundle install,並得到下面的輸出:

Fetching gem metadata from http://rubygems.org/..... 
Using haml (3.1.6) 
Installing mysql2 (0.3.11) with native extensions 
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension. 

/Users/brad/.rvm/rubies/ruby-1.9.3-p194/bin/ruby extconf.rb 
checking for rb_thread_blocking_region()... *** 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 
     --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=/Users/brad/.rvm/rubies/ruby-1.9.3-p194/bin/ruby 
/Users/brad/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:381:in `try_do': The 
compiler failed to generate an executable file. (RuntimeError) 
You have to install development tools first. 
     from /Users/brad/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:461:in `try_link0' 
     from /Users/brad/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:476:in `try_link' 
     from /Users/brad/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:619:in `try_func' 
     from /Users/brad/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:894:in `block in have_func' 
     from /Users/brad/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:790:in `block in checking_for' 
     from /Users/brad/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:284:in `block (2 levels) in postpone' 
     from /Users/brad/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:254:in `open' 
     from /Users/brad/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:284:in `block in postpone' 
     from /Users/brad/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:254:in `open' 
     from /Users/brad/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:280:in `postpone' 
     from /Users/brad/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:789:in `checking_for' 
     from /Users/brad/.rvm/rubies/ruby-1.9.3-p194/lib/ruby/1.9.1/mkmf.rb:893:in `have_func' 
     from extconf.rb:9:in `<main>' 


Gem files will remain installed in /Users/brad/.rvm/gems/ruby-1.9.3-p194/gems/mysql2-0.3.11 for inspection. 
Results logged to /Users/brad/.rvm/gems/ruby-1.9.3-p194/gems/mysql2-0.3.11/ext/mysql2/gem_make.out 
An error occured while installing mysql2 (0.3.11), and Bundler cannot continue. 
Make sure that `gem install mysql2 -v '0.3.11'` succeeds before bundling. 

於是網上到處說要下載MySQL的吧?我得到了自制軟件並運行了brew install mysql 據我所知,它是成功的。我有路徑和文件夾和東西,但我沒有mysql_config文件。無處不在。安裝失敗了嗎?我需要做些什麼來獲得該文件?再次,我在Mac上,所以我不能apt-get install任何開發文件,這似乎幫助了很多人。我很困惑。任何幫助都是極好的。

+0

'你必須安裝開發工具first.'似乎不夠具體... – 2012-07-29 18:12:59

+0

我在xCode上做過。我安裝了更新到開發工具。沒有改變的錯誤。 – 2012-07-29 18:25:55

+2

我不得不重新編譯Ruby本身以使其再次運行。 – iltempo 2012-07-29 20:37:00

回答

1

重新編譯Ruby解決了這個問題。道具到iltempo。 IDK如何給予好評評論...

0

您只需xcode-select --install安裝的命令行工具,在那之後,一切都應該工作正常