将redcarpet gem添加到Rails应用程序后运行"$ bundle"时,"sh:make:command not found"

rob*_*ord 9 gem bundle makefile ruby-on-rails-3

在向Gemfile添加"gem'redcarpet'"后运行"$ bundle"时,我得到以下内容:

$ bundle
...
Using paperclip (2.3.11) 
Using passenger (3.0.7) 
Installing redcarpet (1.17.2) with native extensions /Users/robs/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:551:in `rescue in block in build_extensions': ERROR: Failed to build gem native extension. (Gem::Installer::ExtensionBuildError)

    /Users/robs/.rvm/rubies/ruby-1.9.2-p180/bin/ruby extconf.rb 
creating Makefile

make
sh: make: command not found

Gem files will remain installed in /Users/robs/.rvm/gems/ruby-1.9.2-p180@rails-3.0/gems/redcarpet-1.17.2 for inspection.
Results logged to /Users/robs/.rvm/gems/ruby-1.9.2-p180@rails-3.0/gems/redcarpet-1.17.2/ext/redcarpet/gem_make.out
from /Users/robs/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:529:in `block in build_extensions'
from /Users/robs/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:504:in `each'
from /Users/robs/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:504:in `build_extensions'
from /Users/robs/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:180:in `install'
from /Users/robs/.rvm/gems/ruby-1.9.2-p180@global/gems/bundler-1.0.15/lib/bundler/source.rb:101:in `block in install'
from /Users/robs/.rvm/gems/ruby-1.9.2-p180@global/gems/bundler-1.0.15/lib/bundler/rubygems_integration.rb:78:in `preserve_paths'
...
from /Users/robs/.rvm/gems/ruby-1.9.2-p180@global/gems/bundler-1.0.15/bin/bundle:13:in `<top (required)>'
from /Users/robs/.rvm/gems/ruby-1.9.2-p180@rails-3.0/bin/bundle:19:in `load'
from /Users/robs/.rvm/gems/ruby-1.9.2-p180@rails-3.0/bin/bundle:19:in `<main>'
Run Code Online (Sandbox Code Playgroud)

这里充分要点.

我正在使用不同gemset的rvm.此应用程序使用@ rails-3.0 gemset.这是我之前关于该设置的问题.

我注意到"安装redcarpet(1.17.2)......"行包括"/Users/robs/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/ 1.9.1/ruby​​gems/installer. RB".这是问题的一部分吗?我怎样才能安装它?

谢谢.

Dar*_*río 16

更新到Mountain Lion之后的同样问题.您需要获取新的命令行工具并运行:

sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer 
Run Code Online (Sandbox Code Playgroud)

Src:升级到Mountain Lion和XCode 4打破了我的"制造"?

如果在此之后您仍然会收到如下错误:

make: /usr/bin/gcc-4.2: No such file or directory
Run Code Online (Sandbox Code Playgroud)

符号链接将解决该问题:

sudo ln -s /usr/bin/gcc /usr/bin/gcc-4.2
Run Code Online (Sandbox Code Playgroud)

正如这篇帖子中的一条评论所述.

它可能不是最好的解决方案,但它有效,肯定还有别的东西.


小智 5

Time Machine更新后我遇到了同样的问题.安装Xcode和即将推出的开发人员工具解决了这个问题.