導入
Rubyは、シンプルなスクリプトからゲームやウェブアプリケーションまで何でも書くことができる動的なプログラミング言語です。1993年に日本で最初にリリースされましたが、2005年にはサーバーサイドのウェブ開発の言語として人気を得ました。Rubyは初心者にとって使いやすく楽しい設計になっていますが、複雑なシステムを作成するための十分なパワーも備えています。初心者から経験豊富な開発者まで、どちらにも適した選択肢です。
WindowsでRubyをセットアップする方法は多数ありますが、MicrosoftはWindows Subsystem for Linux(WSL)とBashを使用することを推奨しています。WSLは、Windows 10の機能で、Windows上でネイティブのLinuxコマンドラインツールを実行することができます。多くのRubyライブラリはLinux上で動作するように設計されており、Windows上で実行すると問題が発生する場合があります。
Microsoftは、この問題を解決するためにCanonicalや他のLinuxディストリビューションと提携し、BashシェルとLinuxコマンドラインツールのネイティブサポートを実現しました。BashとWSLがインストールされていれば、お気に入りのWindowsツールでファイルを編集し、Rubyと関連ツールを実行するためにBashとコマンドラインツールを使用できます。
このチュートリアルでは、コマンドラインを使用して、ローカルのWindows 10マシンにRubyプログラミング環境を設定します。まず、Windows上でBashを構成し、次にRuby Version ManagerであるRVMを使用して最新バージョンのRubyと必要なツールをインストールします。そして、小さなRubyプログラムを書くことで環境をテストします。
前提条件
Windows 10が実行されているコンピューターと、管理者特権でソフトウェアをインストールできるアクセス権が必要です。
ステップ1 — Bash on Windowsのインストール
Rubyのインストールと操作にはコマンドラインを使用します。コマンドラインは、コンピューターと対話するための非グラフィカルな方法です。マウスでボタンをクリックする代わりに、テキストとしてコマンドを入力し、テキストベースのフィードバックを受け取ります。コマンドラインは、ソフトウェア開発者にとって不可欠なツールであり、コンピューターで日常的に行う多くのタスクを自動化することができます。
Windowsには、デフォルトで2つのコマンドラインインターフェースがあります:クラシックなコマンドプロンプトとPowerShellです。LinuxやmacOSで見つけることができる人気のあるシェルとコマンド言語であるBashをインストールします。
コマンドラインインターフェースの使用に慣れるためには、Linuxターミナルの紹介を参照してください。
まず、マシンで開発者モードを有効にします。これを行うには、設定アプリを開き、更新とセキュリティを選択し、サイドバーで開発者向けエントリを選択します。その後、開発者モードのオプションをチェックし、この変更を確認するためのプロンプトに同意します。
次に、コントロールパネルを開き、プログラムを選択します。次に、Windowsの機能の有効化または無効化を選択します。表示されるコンポーネントのリストで、Windows Subsystem For Linux (ベータ版)のオプションをチェックします。その後、OKをクリックし、Windowsが追加のコンポーネントをインストールするのを待ちます。これには数分かかることがあります。
すべての新しいコンポーネントが正しく設定されるようにするために、コンピュータを再起動するように求められます。再起動しないと正常に動作しません。
コンピュータが再起動したら、コマンドプロンプトを開き、次のように入力します:
- bash
WindowsストアからBashをインストールするように求められます。これは数分間かかる無料のダウンロードで、展開されます。
OutputThis will install Ubuntu on Windows, distributed by Canonical
and licensed under its terms available here:
https://aka.ms/uowterms
Press "y" to continue: y
Downloading from the Windows Store... 100%
Extracting filesystem, this will take a few minutes....
インストーラが完了すると、ユーザーの作成を求められます:
OutputPlease create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms.wslusers
Enter new UNIX username: Sammy
Enter new UNIX password:
ユーザー名を入力し、ENTER
キーを押してからパスワードを入力してください。パスワードを入力するとき、キーストロークはターミナルウィンドウに表示されません。これはセキュリティ対策であり、コマンドラインでパスワードを要求される際によく見るものです。見えなくても、キーストロークはシステムに記録されていますので、パスワードを入力したらENTER
キーを押して、プロセスを続行してください。
最後に、Bashが起動し、マシン名が表示されるプロンプトが表示されます。
sammy@yourmachine:/mnt/c/Users/Sammy$
警告: Windows Subsystem for Linuxには独自のファイルシステムがあり、それはオペレーティングシステムの隠しファイルに保存されています。マイクロソフトはこのファイルシステムへのアクセスを任意のWindowsアプリケーションからサポートしていません。
ただし、既存のファイルはBashシェルからアクセスできます。たとえば、C:
ドライブの内容は/mnt/c
ディレクトリにあります。マイクロソフトはこのフォルダでファイルを操作することを推奨しています。これにより、既存のWindowsツールを使用してファイルを開いたり変更したりしながら、Bashシェルからもアクセスできます。
テキストエディタ、ファイルマネージャ、統合開発環境などのWindowsプログラムからWindows Subsystem for Linuxファイルシステムの他の部分にアクセスしようとすると、データの破損が発生する可能性があり、サポートされていません。
Bashがインストールされて実行されているので、Rubyとその依存関係をインストールするために使用するRVMをインストールしましょう。
ステップ2 — RVMとRubyのインストール
RVMは、UbuntuまたはmacOSシステム上でRuby環境を設定するプロセスを自動化します。また、実行しているBashのセットアップはUbuntuに基づいているため、Windowsでも最も迅速な設定方法です。Rubyをインストールするために、RVMをインストールしましょう。
RVMを使用してRubyをインストールする最も迅速な方法は、RVMのウェブサイトにホストされているインストールスクリプトを実行することです。
まず、gpg
コマンドを使用して、RVMプロジェクトのキーを公開鍵サーバーに問い合わせ、各RVMリリースに署名されているかを確認します。これにより、ダウンロードするRVMリリースの正当性を検証できます。
- gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB
次に、RVMのインストールスクリプトがリリースを検証するために、gnupg2
パッケージをインストールします。このパッケージをインストールするには、次のコマンドを実行してください:
- sudo apt-get install gnupg2
パスワードが求められるので、Bashをインストールした際に使用したLinuxユーザーのパスワードを入力してください。ただし、パスワードを入力すると、ターミナルウィンドウにはキーストロークが表示されません。これはセキュリティ対策であり、コマンドラインでパスワードを求められる際によく見られるものです。見えなくても、キーストロークはシステムに記録されていますので、パスワードを入力したらENTER
キーを押してプロセスを続行してください。
次に、curl
コマンドを使用して、プロジェクトのウェブサイトからRVMインストールスクリプトをダウンロードします。コマンドの先頭にあるバックスラッシュは、通常のcurlコマンドを使用していることを保証します。
- \curl -sSL https://get.rvm.io -o rvm.sh
curlコマンドに関連付けられているフラグを説明します:
-s
または--silent
フラグは、進行状況メーターを表示しないようにcurlをミュートします。-S
または--show-error
フラグは、curlが失敗した場合にエラーメッセージを表示するようにします。-L
または--location
フラグは、curlにリダイレクトの処理を行うように指示します。サーバーが要求されたページが別の場所に移動したと報告した場合、新しい場所を使用して再度リクエストを実行します。
ダウンロードが完了したら、適用する前にスクリプトの内容を確認するために次のコマンドを実行してください:
- less rvm.sh
矢印キーを使用してファイルをスクロールします。終了してプロンプトに戻るにはq
キーを使用します。
スクリプトの内容に問題がなければ、次のコマンドを実行して最新の安定版のRVMをインストールします:
- cat rvm.sh | bash -s stable
このスクリプトは、Linuxユーザーのホームディレクトリに.rvm
という名前の新しいディレクトリを作成します。ここには、Rubyとその関連コンポーネントがインストールされ、Rubyをインストールするために使用するrvm
実行可能プログラムも含まれます。インストールプロセスは.bashrc
ファイルを変更し、.rvm/bin
フォルダをPATH
環境変数に追加しますので、rvm
コマンドを簡単に実行できるようになります。
ただし、現在のセッションでは rvm
コマンドにアクセスすることはできません。そのため、次のコマンドを実行して修正してください:
- source ~/.rvm/scripts/rvm
次に、最新バージョンのRubyをインストールするために rvm
コマンドを使用します:
- rvm install ruby --default
このプロセスでは、Rubyおよびそのコンポーネントがダウンロードおよびインストールされ、このバージョンのRubyがシステムのデフォルトバージョンになります。既にRubyのバージョンがインストールされている場合、競合を回避するためにこの手順が必要です。
OutputSearching for binary rubies, this might take some time.
Found remote file https://rvm_io.global.ssl.fastly.net/binaries/ubuntu/16.04/x86_64/ruby-2.4.0.tar.bz2
重要な前提条件が不足している場合、インストーラーはこれらの前提条件を取得してインストールします:
OutputChecking requirements for ubuntu.
Installing requirements for ubuntu.
Updating system....
Installing required packages: gawk, libssl-dev, zlib1g-dev, libyaml-dev, libsqlite3-dev, sqlite3, autoconf, libgmp-dev, libgdbm-dev, libncurses5-dev, automake, libtool, bison, libffi-dev, libgmp-dev, libreadline6-dev..................
Requirements installation successful.
インストールスクリプトはパスワードを要求する場合があります。その際は、Bashをインストールした際に作成したLinuxユーザーのパスワードを使用してください。
前提条件が満たされると、RVMがRubyをダウンロードおよびインストールします:
Outputruby-2.4.0 - #configure
ruby-2.4.0 - #download
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 16.4M 100 16.4M 0 0 4828k 0 0:00:03 0:00:03 --:--:-- 4829k
ruby-2.4.0 - #validate archive
ruby-2.4.0 - #extract
ruby-2.4.0 - #validate binary
ruby-2.4.0 - #setup
ruby-2.4.0 - #gemset created /home/brian/.rvm/gems/ruby-2.4.0@global
ruby-2.4.0 - #importing gemset /home/brian/.rvm/gemsets/global.gems..............................
ruby-2.4.0 - #generating global wrappers........
ruby-2.4.0 - #gemset created /home/brian/.rvm/gems/ruby-2.4.0
ruby-2.4.0 - #importing gemsetfile /home/brian/.rvm/gemsets/default.gems evaluated to empty gem list
ruby-2.4.0 - #generating default wrappers........
スクリプトが完了すると、最新バージョンのRubyがインストールされます。
Ruby以外にも、RVMはいくつかの関連ツールをインストールします。これには、対話型Rubyコンソールである irb
、自動化スクリプトを実行できるプログラムである rake
、および自分のプロジェクトで使用する可能性のあるRubyライブラリを簡単にインストールおよび更新できる gem
が含まれます。
インストールしたRubyのバージョンを確認するには、次のコマンドを入力してください:
- ruby -v
これにより、インストールしたRubyの具体的なバージョンが出力されます。
Outputruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-linux]
RVMが新しいBashセッションを開くたびに自動的にそのバージョンのRubyを使用するためには、Bashをログインシェルとして起動する必要があります。RVMは.bash_profile
ファイルを変更するため、これはログインシェルでのみ呼び出されます。Bash for Windowsのショートカットはログインシェルを起動しないため、Rubyを使用する場合は新しいコマンドプロンプトを開いてbash -l
と入力してBashを起動してください。
忘れた場合は、Bashを起動するたびにsource ~/.rvm/scripts/rvm
コマンドを実行してください。
これでRubyがインストールされたので、動作を確認するためのプログラムを作成しましょう。
ステップ3 — シンプルなプログラムの作成
まず、「Hello, World」と表示する小さなプログラムを作成しましょう。これにより、環境が正常に動作していることが確認でき、Rubyプログラムの作成と実行に慣れることができます。
次のコマンドでhello.rb
という新しいファイルを作成します:
- nano hello.rb
エディタに以下のプログラムを入力してください:
puts "Hello, World!"
エディタを終了するには、CTRL+X
を押します。ファイルを保存するように求められたらY
を押してください。
プログラムを実行してみましょう:
- ruby hello.rb
プログラムが実行され、出力が画面に表示されます:
OutputHello, World!
この小さなプログラムは、動作する開発環境を持っていることを証明しています。この環境を使用してRubyをさらに探求し、より大きくて興味深いプロジェクトを構築することができます。
結論
ローカルマシンがソフトウェア開発の準備が整ったら、最初のRubyプログラムの作成チュートリアルを読んで、Rubyのコーディングについてさらに学ぶことができます。