yucken の業務上電脳 Tips 日記、なのだよ。-弐式-

いまさら電脳 Tips を書いてみむとして、するなり.元々は広い意味での電脳(コンピュータ)の Tips を書いていたのですが,いつのまにか,解析ツールの「電脳 ruby」の Tips がメインに.‥‥‥で,5 年間放置してたのだけどやはり Tips を書くブログがないと不便なのでふっかちさせたのであります.(・)>

Mac OSX 10.13.2 High Sierra に電脳 Ruby をインストール

なんか、年々頭がおかしくなっているのか、毎度毎度電脳 RubyMac にうまくインストールことができないダメ鳥です。こんばんはこんばんわ(・)>

まずここを読む

電脳 Ruby ホームページのインストールガイドに導かれるままに行くと

Dennou Tools for Mac OSX

に行くのですが、多分この方法だとうまくいきません。理由がよくわからないのでモヤモヤするのですが。上記のサイトをよく読むと「今後は〜Ruby のライブラリは Gem コマンドによりインストールすることにする」とあります。と言ってもこのサイトのどこを見ても Gem でインストールする方法はありません*1。で、ここに行ってください:

Dennou-Ruby: 地球流体電脳倶楽部謹製品 RubyGems パッケージ

ここ、実は、インストールガイドのトップサイトにリンクがあります。

Xcode のインストール

おそらく、google で検索して出てきたのを GUI でインストールすれば OK と思います。さっきの Dennou Tools for Mac OSX のやり方だと正直よく分かりませんでした。

Gem によるインストール

プロキシを参照しているネットワーク内では (研究機関や大学は、大抵そうだと思う) gem install gphys と説明通りにやってもうまくいきません。プロキシを通さないといけません。ここは当然私は初回できなかったのですが、まず narray をインストールしようとしていたみたいなので、次のようにやりました:

sudo gem install narray -r -p http://[username]:[passwd]@proxy.server.jp:8080

私の所属機関はプロキシはユーザーアカウントとパスワードを入力することになっているので、[username] と [passwd] の部分にそれぞれ入力しました。ここでハマったのがパスワードです。私はパスワードにややこしい記号を入れているので、バックスラッシュ (¥ or \ ) を入れてエスケープしました。例えば、パスワードが sekai;noOWARI でしたら、[passwd] の部分は実際には sekai¥;noOWARI (sekai\;noOWARI) と入れましょう。あと、言うまでもないですが、sudo を付けずにインストールしようとしてファイル書き込み権限がないと怒られました。*2

これでようやく narray パッケージを入れることができました。

sekaino:~ owari$ sudo gem install narray -r -p http://owari:sekai¥;noOWARI@proxy.server.jp:8080
Password:
Fetching: narray-0.6.1.2.gem (100%)
Building native extensions.  This could take a while...
Successfully installed narray-0.6.1.2
Parsing documentation for narray-0.6.1.2
Installing ri documentation for narray-0.6.1.2
Done installing documentation for narray after 0 seconds
1 gem installed

めでたし、めでたし。次は gphys パッケージを入れてみます

sekaino:~ owari$ sudo gem install gphys -r -p http://owari:sekai¥;noOWARI@proxy.server.jp:8080
Password:
Fetching: numru-misc-0.1.2.gem (100%)
Successfully installed numru-misc-0.1.2
Fetching: numru-units-1.9.0.gem (100%)
Successfully installed numru-units-1.9.0
Fetching: narray_miss-1.4.0.gem (100%)
Successfully installed narray_miss-1.4.0
Fetching: ruby-netcdf-0.7.2.gem (100%)
Building native extensions.  This could take a while...
ERROR:  Error installing gphys:
    ERROR: Failed to build gem native extension.

    current directory: /Library/Ruby/Gems/2.3.0/gems/ruby-netcdf-0.7.2/ext/numru
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby -r ./siteconf20180307-1108-cc3adj.rb extconf.rb
checking for narray.h... yes
checking for narray_config.h... yes
checking for netcdf.h... no
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers.  Check the mkmf.log file for more details.  You may
need configuration options.

うーん、なんかうまくいきません。エラーが出てるのは netcdf 辺りに見えるので、ここに問題がありそうです。

$ ncdump
-bash: ncdump: command not found

なんか ncdump が入っていないので、別途入れてあげないといけない気がします。

NetCDF インストール

NetCDF は homebrew というので入れるのが今の主流のようです。

1. command line tools のインストール

なんだかうまく行かなかったので、

Sign in with your Apple ID - Apple Developer

ここで "command line tools" で検索し、自分の XcodeMacOS のヴァージョンにあったものをダウンロードしてインストール

2. homebrew のインストール

結論的に proxy 内でやる方法がよくわからず、自分のもってる pocket wifi で以下のコマンドを入力

git config --global --unset http.proxy
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

追記: おそらく proxy 内で homebrew をインストールするにはこうする:

export http_proxy=http://[username]:[passwd]@proxy.server.jp:8080
export https_proxy=$http_proxy
export ALL_PROXY=$http_proxy
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

3. NetCDF のインストール

brew install netcdf

ncdump が使えるようになったので成功

再び gphys をインストール

$ sudo gem install gphys -r -p http://owari:sekai¥;noOWARI@proxy.server.jp:8080

なんだかうまく行かない…(エラーメッセージはどこを選択すればいいか分からないので全部省略)

gphys の各パッケージについて上記のコマンドをそれぞれで試したところ rb-gsl, ruby-dcl, ruby-fftw3 が入らないようです。どうも、ここ

*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers.  Check the mkmf.log file for more details.  You may
need configuration options.

で引っかかっているようです。おそらくこれは

Dennou-Ruby: 地球流体電脳倶楽部謹製品 RubyGems パッケージ

のページの最後の方の FFTW ver.3, DCL (C 版 v5.3.3 以上), GSL が入っていないからだと思われますので、次回はここからでしょうかね。

*1:いかにもアンカーへのリンクです〜って感じのがあるけど、そこをクリックしても飛ばない

*2:私はまず sudo 抜きでやって見るタイプの人なのです。セキュリティー的には正しいと思うんだけど…