Ошибка установки trrubyracer. Я пробовал все другие SO-решения и до сих пор не повезло

Я думаю, что это обычная проблема установки драгоценного камня therubyracer в Rails. Это зависимость для драгоценного камня twitter-bootstrap-rails.

Я пробовал решение, подобное этому: ` gem install therubyracer` терпит неудачу в Mac OS X Lion

Вот часть моего gem файла, который relavant:

group :assets do
  gem 'sass-rails',   '~> 3.2.3'
  gem 'coffee-rails', '~> 3.2.1'

  # See https://github.com/sstephenson/execjs#readme for more supported runtimes
  gem 'therubyracer', :platforms => :ruby

  gem 'uglifier', '>= 1.0.3'

  gem 'twitter-bootstrap-rails'
end

И вот ошибка, которую я получил при запуске установки пакета:

Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

        /Users/lionel_lei/.rvm/rubies/ruby-1.9.3-p194/bin/ruby extconf.rb 
checking for main() in -lobjc... yes
creating Makefile

make
compiling rr.cpp
make: clang++: No such file or directory
make: *** [rr.o] Error 1


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

Моя системная среда: Рельсы 3.2.6 ruby 1.9.3p194 (2012-04-20 ревизия 35410) [x86_64-darwin11.4.1] Mac OSX 10.7.4 (лев) Xcode 4.5

  • Я вытаскиваю свои волосы. Я новичок в ruby ​​/rails, черт возьми, я новичок в кодировании, поэтому сообщение об ошибке не имеет для меня большого смысла. Я предполагаю, что это какая-то проблема с компилятором.

Спасибо за вашу помощь.

Ответ 1

У меня возникла та же проблема, которую я разрешил, установив libv8 (gem install libv8), а затем установив therubyracer. Сначала вам нужно установить Apple XCode (установить из App Store), так как это включает компилятор c, который вам нужно будет создать libv8.

EDIT: после того, как вы установили XCode, если вы используете последнюю версию, вам нужно вручную установить "инструменты командной строки", чтобы получить компилятор c, вы можете найти это в XCode → предпочтениях → загрузки → установить инструменты командной строки.