2012-07-29 140 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安装的命令行工具,在那之后,一切都应该工作正常