mieki256's diary



2020/08/13(木) [n年前の日記]

#1 [windows][ruby] Windows10上でRubyをインストール

ちょっとした作業をするためのRubyスクリプトを動かしたいので、Windows10 x64 2004上で Ruby をインストールすることにした。本当は Ruby なんてもう捨ててしまいたいのだけど、ちょっとしたスクリプトを書く時は Python や Perl に比べて若干微妙に楽なので、ついつい使ってしまう…。

今までは各種スクリプトの動作確認をするために、Ruby 1.8.7 / 1.9.3 / 2.0.0 / 2.1 / 2.2 / 2.3 / 2.4 / 2.5 / 2.6 をインストールしていたけれど。全てを常時使うわけでもないし、最低限のバージョンだけインストールしておくことにしようかなと…。ひとまず、以下をインストール。 それぞれ、以下にインストールした。
C:\Ruby\Ruby187p330mswin32\
C:\Ruby\Ruby26-x86\

以下、参考ページ。

_ActiveScriptRuby and Other packages
_RubyInstaller for Windows
_Windowsでrubyをはじめよう - Qiita
_Rubyの実行環境構築 on Windows - Qiita

DXRuby を簡単に動かすためには 32bit版(x86版)をインストールしないといけないので、今回は32bit版だけインストールした。x64版(64bit版)をインストールした場合は、自分で DXRuby をビルドしてバイナリを作らないといかんらしい…。また、Windows10 x64上で DXRuby を動かすためには、DirectX9 を別途インストールする必要があるそうで、そちらもインストールしておいた。

_DXRuby 1.4.6 をWindows10で使う時の注意点とインストール方法 - Qiita

バージョンが異なるRubyの切り替えには、uru もしくは pik を使うことにする。

_Windowsにuruを入れてrubyのバージョン管理をする - Qiita
_Rubyアソシエーション: 複数のRuby環境の構築
_Downloads - vertiginous/pik
_jonforums / uru / wiki / Downloads - Bitbucket

pik-0.2.8.msi と uru-0.8.5-windows-x86.7z を、以下にインストールしておいた。
C:\Ruby\Tools\pik\
C:\Ruby\Tools\uru\
この2つを、環境変数 PATH にも設定しておいた。

RUBYOPTがよくわからない。 :

Ruby 1.8.7 を動かそうとしたらエラーが出てしまってちょっと悩んだけれど、環境変数 RUBYOPT に -Eutf8 が指定されていたせいだった。どうやら Ruby 2.x 以降のどこかの時点で増えたコマンドラインオプションのようで、--encoding UTF-8 を指定して、デフォルトのエンコーディングは UTF-8 ということにしているらしい。

_ruby - illegal switch in RUBYOPT: -E (RuntimeError) - Stack Overflow

Ruby 1.8.7 にはそんなコマンドラインオプションは無いから、エラーが出てしまうのだな…。

とりあえず、環境変数 RUBYOPT は削除してしまったけれど、これはこれで何か問題が起きたりしないのだろうか…。

関連付けが上手くいかない。 :

Ruby 1.8.7 と 2.6.6 だけをインストールした状態にする前に、Ruby 2.5.8 や 2.6.6 x64版もインストール・アンインストールして試していたせいか、.rb への関連付けがおかしくなってしまった。Ruby 1.8.7 に関連付けされてるっぽいけどエクスプローラのプロパティでは不明なアプリと表示されてしまう。

レジストリを弄って対処。関連付けに関して最も優先順位が高いらしい、以下の項目を削除。
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.rb

DOS窓(コマンドプロンプト)を管理者権限で開いて、assoc と ftype を指定する。
assoc .rb=Ruby26
ftype Ruby26="C:\Ruby\Ruby26-x86\bin\ruby.exe" "%1" %*

これで、DOS窓上で .rb をいきなり実行しても、Ruby 2.6.6 が呼ばれるようになった。

でもまあ、ruby hoge.rb と打ったほうが間違いないのだけど…。

以上です。

過去ログ表示

Prev - 2020/08 - Next
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project