Ruby on rails4系でBootstrapを利用するためのtips
公開日:
:
Bootstrap, Rails libv8, therubyracer
MacでRuby on rails4系のBootstrapを利用しようとしてハマりましたので、対処方法を記載させていただきます。
1 問題の発端
therubyracer 0.11.0 問題まとめ
に詳細が記載されていますが、therubyracerの作者が0.11系からlibv8に対する依存性を弱めようとしてました。
それ自体は良い事だと思いますが、依存するlibv8 が作成するのに失敗しており、バイナリが壊れている状態でリリースされてしまい、大混乱が起こったそうです。
2 回避方法
利用すべきlibv8とtherubyracerのバージョンを確認し、そのバージョンを指定して動作するようにすることで回避可能となります。
利用すべきlibv8とtherubyracerのバージョンを確認
以下のコマンドを実行しOS Versionを確認します。
1 |
ruby -rubygems -e 'puts Gem::Platform.new(RUBY_PLATFORM)' |
Yosemite で libv8 と therubyracer をインストールするに書かれている表で利用すべきlibv8とtherubyracerのバージョンを確認してください。
先ほどのコマンドの結果が
x86_64-darwin-13
の場合は、libv8は’3.16.14.3’、therubyracerは’0.12.1’を利用する必要があります。
libv8とtherubyracerのインストール
先ほど確認したバージョンの物をインストールします。
1 2 3 4 |
gem install libv8 -v '3.16.14.3' -- --with-system-v8 gem install therubyracer -v '0.12.1' -- --with-v8-dir bundle config build.libv8 --with-system-v8 bundle config build.therubyracer --with-v8-dir |
Gemfileの編集
Gemfileに以下の行を追加します。
1 2 3 4 5 |
gem 'therubyracer', platforms: :ruby gem 'libv8', '3.16.14.3' gem 'less-rails' gem 'twitter-bootstrap-rails' |
libv8のバージョンは先ほど手動でインストールした値を指定します。
bundle installとbootstrapのインストール
1 |
bundle install --path vendor/bundle |
を実行します。
これでbundle installは成功するはずです。
続いて
1 |
rails g bootstrap:install |
を実行します。
これで万事うまくいくはずです。
Googleアドセンス
Googleアドセンス
関連記事
記事はありませんでした