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

13 July 2007, Fri [Mac][ruby]電脳 Ruby インストール ”雑” 記

すごく乱雑です.インストールメモそのまま (^ ^;)

ちなみに途中までは失敗記録で,途中から fink を入れ直してやりなおしています.

電脳 ruby インストール記録 (26 Jun.- 02 Jul. 2007)


1. Xcode Tools をインストールする

# ソースMac 付属の Install Disc 1

# あるいは

# Apple Developer Connection (ADC; https://connect.apple.com/) ←最新 !

# ADC は会員登録 (無料) すれば,Xcode Tools をはじめとする開発用ツールを

# ダウンロードする事ができます

# Member サイトログイン後,Downloads -> Developer Tools -> Xcode 2.x.x (Disk Image)

ディスクイメージ (*.dmg) を開き,XcodeTools.mpkg をダブルクリックしてインストーラ起動.

その後,ウィジェットの指示に従ってインストールする.

(ここから失敗の記録.成功例はここから.)

2. Finkインストールする

# http://www.finkproject.org/download/index.php?phpLang=ja

# 電脳 Ruby (Mac 版) インストールガイドにある通り

# 初心者向け: 「ターミナル」はアプリケーションフォルダ内のユーティリティフォルダ内に

# あります.ダブルクリックすると,下記のような画面が出るので,コマンドを打って,

# Enter ボタンを押してください.

f:id:yucken:20080229124018j:image

※私が (インストール後に) 入力したコマンド

fink scanpackages; fink index

(これは成功)

fink selfupdate

(これは失敗.rsync という通信プロトコルで fink をアップデートしようとしているみたいだが,ダメっぽい

 というわけで,apt-get でアップデートすることに.)

sudo apt-get update; sudo apt-get install fink

(これは成功.ちなみに sudo は,管理者権限でコマンド実行するときにつける.fink は sudo を付けなくても実行

 できたんだけど.詳細は気にしないことにする.)

3. 電脳 ruby パッケージのインストール

電脳 Ruby (Mac 版) インストールガイドよりパッケージをダウンロード

(以下,デスクトップにダウンロードしたものと仮定)

fink-dennou-Intel[PPC].tarクリックする

fink-dennou-Intel フォルダができる

ターミナルで cd ~/Desktop を入力 (pwd を入力して /Users/- -/Desktop と出れば OK. - - はユーザ名)

ターミナルで sudo cp fink-dennou-Intel/* /sw/fink/dists/local/main/finkinfo/ を入力 (sudo を付けないといけなかった)

sudo fink install dcl は失敗 (g95 がどうのと言われる.)

sudo fink install dcl-c は OK

sudo fink install narray は失敗 (ruby18 が ruby 1.8.4-???? 以上でないと言われる)

ruby 関係がうまくいっていない気がするので ruby 関係を先にやる事にする.

MacPorts を使ってみる事にする.

version1.4.0 をダウンロード/ インストール (http://www.macports.org/)

sudo port -d selfupdate (気分的,debug モードで)

-> rsync がうまくいかず失敗

もう一度 fink で dcl のインストールから再挑戦してみる

sudo fink install dcl がうまくいった

# 謎.変わったとしたら,~/.bashrc かな? Terminal を立ち上げ直したし.

sudo fink install narray は失敗 (ruby18 が ruby 1.8.4-???? 以上でないと言われる)

さっきと同じ

仕方がないので ruby をソースからインストールする事にする.念のため fink でやってみる

sudo fink index

sudo fink install ruby ruby18-dev

で,なぜかうまくいった.(以前はうまくいかなかった印象が.)と思ったら次のメッセージをはいて終了

Failed: buildlock failure

‥‥‥,仕方がないのでソースからインストール.

といっても,http://www.ruby-lang.org/ja/install.cgi?cmd=view;name=MacOS+X を見れば簡単にできる.

パス設定

/usr/local/bin に実行ファイルが置かれる.echo $PATH によると,/sw/bin/ を先に探しにいっているので

/sw/bin/ 下の ruby@ のシンボリックリンクを /sw/bin/ruby1.8 -> /usr/local/bin/ruby に変更

sudo fink install narray は失敗 (ruby18 が ruby 1.8.4-???? 以上でないと言われる)

さっきと同じ

というわけで,/sw/bin 下に ruby18@ -> /usr/local/bin/ruby のシンボリックリンクを作る事にする.

‥‥‥でも,ダメ.

仕方がないので binary から narray を入れる.

(http://raa.ruby-lang.org/list.rhtml?name=NArray 参照)

http://rubyforge.org/frs/download.php/12235/narray-0.5.9.tar.gz をダウンロード

README.ja より

-

  • ruby extconf.rb
  • make
  • make site-install

やはり,ruby 1.8.4-??? 以上じゃないと言われる.多分,fink 上での ruby が 1.8.1 だからかなあ

なんとか思う.

http://pdb.finkproject.org/pdb/package.php/ruby18

を参照すると,unstable が 1.8.6 なんとかとなっている.この辺りがあやしいですね.

というわけで,ふと思い出した

http://www.gfd-dennou.org/arch/davis/gfdnavi/doc/install/gfdnavi-on-macosx.htm

にあった,"/sw/etc/fink.conf を編集" をやってみる."Trees: 行に unstable/main と unstable/crypto を追加"

‥‥‥,いや,すでに追加されてる.

もういいや,fink を最初から作り直そう.

mv /sw /sw.bak

(Fink のインストール)

http://www.gfd-dennou.org/arch/davis/gfdnavi/doc/install/gfdnavi-on-macosx.htm

の "Fink パッケージアップデート" の所にそってやります.

==ここから引用 "# は自分のコメント"==

/sw/etc/fink.conf を編集し, 以下のように Trees: 行に unstable/main と unstable/crypto を追加します.

Trees: local/main stable/main stable/crypto unstable/main unstable/crypto

以下のようにコマンドを実行してアップデートをおこないます.

? $ fink selfupdate

ファイルの取ってきかた(? バージョン管理の話かな ?)は CSV を選択. デフォルトrsync だがファイアウォール環境下ではほぼ無理らしい.)

? $ fink index

? $ fink scanpackages

? $ fink update-all

このとき, すべてのパッケージがアップデートされなかったので, メッセージのとおりに

# fink selfupdate で文句を言われましたが,ruby の(インストールすべき)最新バージョンは上がっている (fink list ruby で確認)

ので,目をつぶって fink index, ‥‥‥と続けました.

? $ fink scanpackages

? $ sudo apt-get update

? $ sudo apt-get install gettext=0.10.40-25

としてから, 再度

? $ fink update-all

以下のコマンドでインストールします. ソースを取得し, debパッケージを作成し, それがインストールされます.

$ fink install ruby ruby18-dev

.bashrc に source /sw/bin/init.sh の設定がされていれば, Finkの Ruby が優先されます.

# 具体的には ~/.bashrc (なければ emacs で作る.echo 'source /sw/bin/init.sh' > ~/.bashrc でもよい.すでに .bashrc があるときは

> じゃなくて >>)

$ which ruby

/sw/bin/ruby

# ついでに,ruby -v でバージョンも確かめておきました.

==ここまで引用==

4. 電脳 ruby パッケージのインストール (後編)

3. で dcl と dcl-c のパッケージでインストール済み.

cd /sw/fink/dists/local/main/finkinfo/

sudo mv /sw.bak/fink/dists/local/main/finkinfo/* .

で info ファイルを引越.

まず,narray パッケージのインストール

sudo fink install narray

途中で何か訊かれるけど

curl: (22) The requested URL returned error: 404

### execution of curl failed, exit code 22

Downloading the file "narray-0.5.9.tar.gz" failed.

(1) Give up

(2) Retry the same mirror

(3) Retry another mirror

(4) Retry using original source URL

How do you want to proceed? [3] 4

ここは 4 にしておくとうまくいくことを経験上知っている.(なんべんもインストールしたから - -;)

irb

で irb を立ち上げて,

irb(main):001:0> require "narray"

=> true

が出れば OK.

次は ruby-dcl をインストール

http://www.gfd-dennou.org/arch/ruby/products/ruby-dcl/

によると,

Ruby, NArray, NArrayMiss, dcl-5.3.2-C

が必要のようです.ruby, NArray, dcl-5.3.2-C はOK として,NArrayMiss ですね.

sudo fink install narray-miss

‥‥‥,どうやって確認すればいいんだろう.

(エラーも (インストールログの最後しか見てないけど) なかったし.)

次は ruby-dcl って名前のパッケージがある.上の ruby-dcl をインストールって記事はいらなかったのかな?

sudo fink install ruby-dcl

# 途中で gtk+2 か GNOME かを選ぶ箇所があったので,gtk+2 を選択

# 同時に両方は入れられないらしい.(http://www-aos.eps.s.u-tokyo.ac.jp/~iwamae/FinkDennou/ 神代さん)

irb

irb(main):001:0> require "numru/dcl"

=> true

が出たので OK?

次は netcdf インタフェース

sudo fink install ruby-netcdf

# エラーなし.netcdf って入れなくていいのかな? (インストールの冒頭で入れるっていうメッセージが出た気がする)

NumRu 関連

sudo fink install numru-misc

sudo fink install numru-units

sudo fink install numru-met

# エラーなし

描画 Gave

sudo fink install gave

# 週末インストールさせておいたら失敗,メッセージに従い以下のコマンド.

sudo fink selfupdate

sudo fink install gave

で OK

GPhys

sudo fink install gphys

# エラーなし

数値演算系 FFTW3 ラッパー

sudo fink install ruby-fftw3

# エラーなし

sudo fink install ruby-gtk2

# 依存性に問題ありでストップ