无法构建gem本机扩展:无法安装Rails + MySQL2

时间:2012-03-19 13:53:04

标签: ruby-on-rails ruby

我在MAC OS X LION上并且不断收到错误消息在尝试安装rails和mysql时无法构建gem native扩展。

这就是我在做的事情。我输入:

    $ sudo gem install rails

错误消息

Building native extensions.  This could take a while...

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

/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 files will remain installed in /Library/Ruby/Gems/1.8/gems/json-1.6.5 for inspection.
Results logged to /Library/Ruby/Gems/1.8/gems/json-1.6.5/ext/json/ext/parser/gem_make.out
ingjerd$ ruby -v
ruby 1.8.7 (2010-01-10 patchlevel 249) [universal-darwin11.0]

当我尝试安装mysql2 gem时会发生同样的情况。

当我执行命令时

    gem list

然后rails和mysql不在本地宝石列表中。

当我尝试命令时

    which rails

我明白了:

/usr/bin/rails

那么那种让我觉得rails就在某处。但是当我尝试:

  $ rails -v

我明白了:

Rails is not currently installed on this system. To get the latest version, simply type:
$ sudo gem install rails You can then rerun your "rails" command.

我想知道这是否因为我按错误的顺序做事?

我首先更新了宝石,然后我安装了XCODE并将.bash_profile更改为以下内容 - 我想我应该在更新宝石之前完成此操作。

PS1="\u$ "
alias ll="ls -laGH"

export PATH="/usr/local/bin:/usr/local/sbin:/usr/local/mysql/bin:$PATH"

我认为我应该在更新宝石之前完成.bash_profile路径,我也应该先安装xcode,但我不确定服务顺序。

请帮助一个真正的红宝石新手,因为在我有工作环境之前我无法开始学习....

1 个答案:

答案 0 :(得分:0)

对我来说,安装Xcode然后安装命令行工具。

您可以从Xcode首选项>安装命令行工具下载>命令行工具。我不知道您是否可以从here下载命令行工具并跳过Xcode安装。

我还建议您安装rbenv - 看看您可以使用下面提到的brew进行安装 - 以管理多个ruby版本,或者如果您需要RVM - 我试过了他们俩都不知道究竟是什么区别。这是因为当您升级ruby时,需要更改PATH系统变量以检测新安装的Ruby which -a ruby向您显示已安装的Rubies的路径。

第二部分,要安装mysql2,我已经安装了brew,然后安装了mysql及其头文件。

# to install brew
ruby -e "$(curl -fsSkL raw.github.com/mxcl/homebrew/go)"
# to install mysql
brew install mysql