そよ風情報局 -初心者プログラマが独学で試行錯誤-

Webエンジニア目指して勉強中の初心者が、苦労したことや学んだ言語について書いてます。たまにゲームのことも。

プログラミング

Ruby on RailsをWindows Subsystem for Linuxにインストール

更新日:



 

前々からRuby on Railsを使ってみたいと思ってました。
前もRailsをPCに入れてみようと思っていろいろ試してたんですがうまくいかず・・・。

前に試したのは、

  • Windows用のインストーラを使ってのインストール
  • VirtualBox上にUbuntuをインストールして、その上にRailsのインストール

この2つです。

Railsの導入方法を調べてると、Macで使ってる人が多いようで、その解説が多かったですね。
自分も最近Macにとても興味があって欲しいんですが、結構なお値段するのでそう簡単に手が出せないです・・・w

話が逸れました。
Railsのインストールについてです。

前回やったときは、どちらもうまくいきませんでした。
何回やっても途中どこだったかでエラーが出て諦めたんですよね(^_^;)

 

Windows Subsystem for Linuxについて

Rubyって調べてると、どうにもLinux系のOSで動かすのが主流みたいですね。
そのため、Macで使ってる人が多んですね。
聞くところによると、MacってLinuxベースにGUI強化したOSみたいなものらしいですね。
自分は使ったことないので詳しくは知らないですが、Linuxライクな使い方できるみたいです。

気軽にMac買うことはできませんし、仮想環境上でLinux使うのもわざわざPCを2回起動するみたいなことしないといけないですし、正直面倒です。。。

そんなときに便利なのがWindows10上で使用できるWindows Subsystem for Linux通称WSLです!
どんなものか簡単に言うと、Windows10上に仮想でLinuxが動いてて、その端末がWindows10で使用できるって感じですかね?
わざわざ仮想OSを起動!ってしなくても、端末ボタンをポチっとすればそれだけでLinuxの端末が使用できます。



Ruby on Railsのインストールについて

もちろんWSL上にコマンドを使ってインストールすることができます。
やり方は解説サイトがいっぱいあるので、ぐぐればすぐ出てくるんですが、その通りにやっても恐らく失敗します(^_^;)
私も前回挫折したとき試して、うまくできず諦めて、今回もエラーが全然解決できず諦めかけましたが何とかうまくできたって感じです。。。

躓いた箇所について説明していきます。

流れとしては、

  • 全体のアップデート
  • 必要パッケージのインストール
  • rbenvのインストール
  • Rubyのインストール
  • Railsのインストール

って感じです。
それぞれの詳細はだいたいどこのサイトを見ても書いてあるので割愛します。

 

インストール時のエラーについて

さて、上記の流れの中で私が躓いた箇所は「Railsのインストール」の部分です。

ディレクトリを作成して、その中にインストールを行います。

その際、

bundle init

と入れるとそのディレクトリの中にインストールに必要なファイルが作成されます。
その後、作成されたGemfileを編集します。

viなりでGemfileを開いたら

#gem "rails"

と書かれた行の#を消して保存します。
#がついているとその行はコメントアウトされているので、コマンドを有効化させるための作業です。

コマンド有効化の作業が終わったらbundleのインストールです。

bundle install --path vendor/bundle

するとここで問題。
エラーが表示されて失敗しました。

An error occurred while installing nokogiri (1.8.5), and Bundler cannot continue.
Make sure that `gem install nokogiri -v '1.8.5'` succeeds before bundling.

nokogiriのインストール中にエラーが出て続行できないためinstallコマンドでnokogiriをインストールしてくださいって感じですかね?

この文に書かれているように

gem install nokogiri -v '1.8.5'

と入力しても権限がないと言われて実行できなかったので、
単純なsudo抜けのミスか!と安心してsudoを入れて実行

sudo gem install nokogiri -v '1.8.5'

が、エラーが出てうまくいかず(´・ω・`)



解決方法

表示されたエラー文でぐぐるとちょくちょく解決策のようなものが出てきますが、要約するとbrewというものが足りないようです。

実際にbrewをインストールしたときのログを誤って消してしまったので、ここで説明することができないのが非常に残念ですが、思い出せる範囲で試したことを書いていきます。

参照にしたサイトはこちらです。

こちらはMacを使ってるので少し異なるかと思いますが、結果的にかなり助かりました。
ここで説明されている通り、

brew update

を実行しようとしたら、そもそもbrewが入っていないと怒られました。
そのため、まずbrewをインストールする必要があることが判明。

しかしながら、

apt-get install brew

でインストールしようとしても、そんなパッケージないよ!と怒られます。
「brew wsl インストール」等で調べて見つけたコマンドを手当たり次第試してみました。
その中で効果があったであろうコマンドを挙げておきます。

sudo apt-get -y install build-essential curl git python-setuptools ruby
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Linuxbrew/linuxbrew/go/install)"
sudo apt-get install build-essential curl git m4 ruby texinfo libbz2-dev libcurl4-openssl-dev libexpat-dev libncurses-dev zlib1g-dev
sudo apt-get install gettext
sudo apt install linuxbrew-wrapper
brew install libxml2
brew link --force libxml2
sudo gem install nokogiri -- --use-system-libraries
sudo apt-get install build-essential liblzma-dev patch ruby-dev zlib1g-dev

多分これが試した全部のコマンドです。
これを打ち込んだ後bundle install~の実行に成功しました。
その後は解説通りに進めるだけでOKです!



先程も書いた通り、実際に打ち込んだときのログは誤って消してしまったので、打ち込んだログを呼び出す以下のコマンドを実行して確認しました。

cat ~/.bash_history

これを実行することで、端末を閉じてしまった後でも自分が打ち込んだコマンドの履歴を見ることができます。
ここから私が試したコマンドを拾ってきました。
(実際は同じコマンドを何回も打ってたり間違えて打ってたりがいっぱい出てきますw)

多分全く関係ないコマンドも混ざってるかと思いますが、一応これ全部打ち込めば恐らくインストールはできます!
もう何やってもうまくいかない!!ってお困りの方はぜひお試しあれです。
結局最後の1行を入れたらうまく行ったからbrew関係なかった疑惑も(小声)

 

最後に

これで普通にWindows10を起動するだけでRailsが使える環境を作ることに成功しました。
実はRailsを使いたくて試行錯誤して挫折したから代わりにPHPの勉強を始めたんですよねw
でもこれで念願のRailsが触れます!!

と言ってもまだRubyとはなんぞやってレベルで何もわかってないので、まずRubyの基礎から勉強しようかなと思ってます。
フレームワークというものをまだ全く使ったことがないので、早く使って何かしら作ってみたいですね。







-プログラミング

Copyright© そよ風情報局 -初心者プログラマが独学で試行錯誤- , 2018 All Rights Reserved Powered by STINGER.