therubyracer драгоценный камень на окнах - PullRequest
50 голосов
/ 15 июня 2011

Я мирно разрабатывал для Windows, не добавляя никаких драгоценных камней в течение нескольких недель, и сегодня я решил сделать обновление пакета, но я не могу пройти через этот драгоценный камень, называемый therubyracer.У меня установлен devkit, и он работает в соответствии с процедурой проверки документации.

Мой вопрос: есть ли способ установить этот драгоценный камень вообще на Windows?

И этот камень будет требоваться рельсам 3.1, и именно поэтому теперь, когда я делаю обновление связки, он «проскальзывает» в рельсы 3.0.8 как жест раннего удара для будущего 3.1миграция?

РЕДАКТИРОВАТЬ, включая 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

Ответы [ 5 ]

66 голосов
/ 15 июня 2011

Нет, я не знаю, как в данный момент установить этот гем в Windows.Проблема в том, что в настоящее время нет предварительно скомпилированной версии гема libv8 для Windows, а исходная версия совместима только с * nix.Это не обязательно должно быть так, просто нужно, чтобы кто-то нашел время, чтобы компиляция работала для Windows.https://github.com/cowboyd/libv8

Тем не менее, Windows должна поставляться с JScript, средой выполнения Microsoft JavaScript, которую Rails (через execjs ) будет автоматически обнаруживать и использовать, поэтому вы сможете просто удалитьваша зависимость от therubyracer.

Как хранитель этого драгоценного камня, это, конечно, огорчило бы меня, но оно должно помочь вам в этом.

13 голосов
/ 23 июля 2011

Это, по сути, то, что сделал Ник, я считаю:

В вашем Gemfile изолировать гем TheRubyRacer от производственной среды, например:

group :production do
  gem 'therubyracer-heroku', :platform => :ruby
end

В вашей среде разработки вместообычный bundle install до

bundle install --without production

или, как предполагает Ник, bundle install development.При развертывании в Heroku он установит гем, потому что это производственная среда.

Rails-гуру: пожалуйста, предложите правки, чтобы сделать его менее отрадным.

10 голосов
/ 03 декабря 2012

Причиной всех этих проблем является therubyracer-0.11.0beta1-x86-mingw32.gem и v8.dll.

Я собрал необходимые файлы dll и gem и загрузил их в github.

скачайте пакет и следуйте инструкциям.

https://github.com/eakmotion/therubyracer_for_windows

4 голосов
/ 10 октября 2012

Существует сборка для Windows . Его можно загрузить и установить вручную с помощью gem install therubyracer-0.11.0beta1-x86-mingw32.gem.

2 голосов
/ 15 июня 2011

Чтобы ответить на часть вашего вопроса о Rails 3.1, вот предложение ...

В Rails 3.1 в настоящее время используется гем, для которого требуется установить среду выполнения javascript на машине.На Mac вам обычно не нужно беспокоиться об этом, поскольку он уже есть, но в Linux (и я думаю, что и в Windows) вам нужно его установить.Итак, therubyracer, или иногда node или nodejs, иногда устанавливаются, поскольку они предоставляют это.

Однако один из основных ребят из Rails сказал, что планирует исправить эту зависимость до финального релиза Rails 3.1, так что, надеюсь, что 'случится и зависимость исчезнет.

...