Драгоценный камень на окнах
Я мирно развивался в Windows без добавления каких-либо драгоценных камней в течение нескольких недель, и сегодня я решил сделать обновление пакета, но я не могу пройти через этот драгоценный камень, называемый therubyracer. У меня установлен devkit и он работает в соответствии с процедурой проверки документации.
Мой вопрос: есть ли способ установить этот камень вообще на окнах?
И этот жемчуг будет нужен rails 3.1, и именно поэтому теперь, когда я обновляю пакет, он "поскользнулся" в рельсах 3.0.8 как жест раннего запуска для будущей миграции 3.1?
EDIT, включая Gemfile и Gemfile.lock
# Gemfile
# source 'http://rubygems.org'
source :rubygems
gem 'rails'
gem 'rake', '0.8.7'
gem 'youtube_it'
gem 'panda'
gem "nifty-generators"
# gem "mongoid", "2.0.0.rc.7"
gem "mongoid"
gem "mongoid-eager-loading"
# gem 'mongoid_search'
gem "bson_ext", ">1.1.5"
gem 'devise'
gem 'cancan'
gem 'hirb'
# gem 'heroku'
gem 'rest-client'
gem 'less' # needs the more plugin
# gem 'hash_extension'
gem 'aws-s3', :require => 'aws/s3' # s3.rb
gem 'jquery-rails', ">= 0.2.7" # rails g jquery:install
# gem 'mongrel', ">= 1.2.0.pre2"
gem 'delayed_job'
gem 'delayed_job_mongoid'
gem 'kaminari'
# Gemfile.lock
GEM
remote: http://rubygems.org/
specs:
abstract (1.0.0)
actionmailer (3.0.8)
actionpack (= 3.0.8)
mail (~> 2.2.19)
actionpack (3.0.8)
activemodel (= 3.0.8)
activesupport (= 3.0.8)
builder (~> 2.1.2)
erubis (~> 2.6.6)
i18n (~> 0.5.0)
rack (~> 1.2.1)
rack-mount (~> 0.6.14)
rack-test (~> 0.5.7)
tzinfo (~> 0.3.23)
activemodel (3.0.8)
activesupport (= 3.0.8)
builder (~> 2.1.2)
i18n (~> 0.5.0)
activerecord (3.0.8)
activemodel (= 3.0.8)
activesupport (= 3.0.8)
arel (~> 2.0.10)
tzinfo (~> 0.3.23)
activeresource (3.0.8)
activemodel (= 3.0.8)
activesupport (= 3.0.8)
activesupport (3.0.8)
arel (2.0.10)
aws-s3 (0.6.2)
builder
mime-types
xml-simple
bcrypt-ruby (2.1.4-x86-mingw32)
bson (1.3.1)
bson_ext (1.3.1)
builder (2.1.2)
cancan (1.6.5)
daemons (1.1.3)
delayed_job (2.1.4)
activesupport (~> 3.0)
daemons
delayed_job_mongoid (1.0.2)
delayed_job (~> 2.1.1)
mongoid (~> 2.0.0.rc)
devise (1.3.4)
bcrypt-ruby (~> 2.1.2)
orm_adapter (~> 0.0.3)
warden (~> 1.0.3)
erubis (2.6.6)
abstract (>= 1.0.0)
hirb (0.4.5)
i18n (0.5.0)
jquery-rails (1.0.10)
railties (~> 3.0)
thor (~> 0.14)
json (1.5.2)
kaminari (0.12.4)
rails (>= 3.0.0)
less (1.2.21)
mutter (>= 0.4.2)
treetop (>= 1.4.2)
mail (2.2.19)
activesupport (>= 2.3.6)
i18n (>= 0.4.0)
mime-types (~> 1.16)
treetop (~> 1.4.8)
mime-types (1.16)
mongo (1.3.1)
bson (>= 1.3.1)
mongoid (2.0.2)
activemodel (~> 3.0)
mongo (~> 1.3)
tzinfo (~> 0.3.22)
mongoid-eager-loading (0.3.1)
mutter (0.5.3)
nifty-generators (0.4.6)
oauth (0.4.4)
orm_adapter (0.0.5)
panda (1.4.2)
json
rest-client
ruby-hmac (>= 0.3.2)
polyglot (0.3.1)
rack (1.2.3)
rack-mount (0.6.14)
rack (>= 1.0.0)
rack-test (0.5.7)
rack (>= 1.0)
rails (3.0.8)
actionmailer (= 3.0.8)
actionpack (= 3.0.8)
activerecord (= 3.0.8)
activeresource (= 3.0.8)
activesupport (= 3.0.8)
bundler (~> 1.0)
railties (= 3.0.8)
railties (3.0.8)
actionpack (= 3.0.8)
activesupport (= 3.0.8)
rake (>= 0.8.7)
thor (~> 0.14.4)
rake (0.8.7)
rest-client (1.6.1)
mime-types (>= 1.16)
ruby-hmac (0.4.0)
thor (0.14.6)
treetop (1.4.9)
polyglot (>= 0.3.1)
tzinfo (0.3.28)
warden (1.0.4)
rack (>= 1.0)
xml-simple (1.0.16)
youtube_it (1.4.2)
builder
oauth (>= 0.4.4)
PLATFORMS
x86-mingw32
DEPENDENCIES
aws-s3
bson_ext (> 1.1.5)
cancan
delayed_job
delayed_job_mongoid
devise
hirb
jquery-rails (>= 0.2.7)
kaminari
less
mongoid
mongoid-eager-loading
nifty-generators
panda
rails
rake (= 0.8.7)
rest-client
youtube_it
Ответы
Ответ 1
Нет, я не знаю, как в настоящее время установить этот гем в Windows. Проблема в том, что в настоящее время нет предварительно скомпилированной версии гема libv8 для Windows, а исходная версия совместима только с * nix. Это не обязательно должно быть так, просто нужно, чтобы кто-то нашел время, чтобы компиляция работала для Windows. https://github.com/cowboyd/libv8
Тем не менее, Windows должна поставляться с JScript, средой выполнения Microsoft JavaScript, которую Rails (через execjs) будет автоматически обнаруживать и использовать, поэтому вы сможете просто удалить свою зависимость от therubyracer.
Как хранитель этого драгоценного камня, это, конечно, заставило бы меня огорчиться, но это должно помочь вам в этом.
Ответ 2
Это, по сути, то, что сделал Ник, я полагаю:
В Gemfile изолируйте камень TheRubyRacer в производственной среде следующим образом:
group :production do
gem 'therubyracer-heroku', :platform => :ruby
end
В вашей среде разработки вместо простого bundle install
do
bundle install --without production
или, как предлагает Ник, bundle install development
. Когда вы развертываете в Heroku, он установит камень, потому что это производственная среда.
Rails gurus: предложите изменения, чтобы сделать это менее сочным.
Ответ 3
Причиной всех этих проблем является therubyracer-0.11.0beta1-x86-mingw32.gem и v8.dll.
Я выполнил необходимые файлы dll и gem и загрузил их в github.
загрузите пакет и следуйте инструкциям.
https://github.com/eakmotion/therubyracer_for_windows
Ответ 4
Существует сборка для окон. Его можно загрузить и установить вручную gem install therubyracer-0.11.0beta1-x86-mingw32.gem
.
Ответ 5
Чтобы ответить на часть вашего вопроса о Rails 3.1, здесь сделка...
В Rails 3.1 в настоящее время используется камень, для которого на машине должна быть установлена среда выполнения javascript. На Mac вам, как правило, не нужно беспокоиться об этом, так как у него уже есть один, но Linux (и я думаю, что Windows тоже) вам нужно установить его. Таким образом, иногда иногда устанавливаются пароли, или иногда node или nodejs, поскольку они обеспечивают это.
Однако один из основных реселлеров Rails сказал, что они планируют исправить эту зависимость до окончательной версии Rails 3.1, поэтому, надеюсь, это произойдет, и зависимость не исчезнет.