установка пакета json не удалась - PullRequest
1 голос
/ 25 декабря 2011

Я использую учебник по ruby ​​on rails здесь:

http://ruby.railstutorial.org/chapters/modeling-and-viewing-users-one#top

и у меня возникли проблемы при использовании команды bundle exec rake db: migrate,В нем говорилось:

Не удалось найти json-1.6.3 ни в одном из источников.

Поэтому я использовал команду gem install json -v '1.6.3', и все, казалось, работало нормально.Затем я попытался запустить bundle exec rake db:migrate еще раз, и это не удалось с тем же сообщением, не смог найти JSON.

Я считаю, что ключ к проблеме в том, что когда я использую команду bundle install, это сообщение появляетсяпри попытке установить json 1.6.3:

Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/Users/chuckyuan/.rvm/rubies/ruby-1.9.2-p290/bin/ruby extconf.rb 
creating Makefile

make
Makefile:148: *** target pattern contains no `%'.  Stop.


Gem files will remain installed in /Users/chuckyuan/Documents/rails_projects/sample_app/db:migrate/ruby/1.9.1/gems/json-1.6.3 for inspection.
Results logged to /Users/chuckyuan/Documents/rails_projects/sample_app/db:migrate/ruby/1.9.1/gems/json-1.6.3/ext/json/ext/parser/gem_make.out
An error occured while installing json (1.6.3), and Bundler cannot continue.
Make sure that `gem install json -v '1.6.3'` succeeds before bundling.

Когда я создаю новый проект rails и выполняю те же команды, все работает.Заранее спасибо за помощь.

1 Ответ

0 голосов
/ 25 декабря 2011

На Ruby 1.8.7 вам нужно установить гем.Однако в Ruby 1.9.2 гем json связан с основным дистрибутивом Ruby.Итак, если вы используете 1.9.2, вы, вероятно, все готово.Если вы используете 1.8.7, вам нужно установить гем.

...