読者です 読者をやめる 読者になる 読者になる

紺屋高尾

ぬしの女房はんに、わちき、なりたいんざます。来年三月十五日、年季(ねん)が明けるんざます。そのときは眉毛落として歯に鉄漿(かね)染めて、ぬしの傍に参りんすよって、お内儀(かみ)さんにしてくんなますか?

Ruby Miyako のインストール

 これがやりたくて、MiyakoというRubyのライブラリを動かすのに、四苦八苦してました。
これ↓

 Macでmiyakoが動く環境を作ろうとして、挫折しました(笑)
SDLとSGEというのが必要なのですが、SGEをMacに入れるのがどうにも大変なんです。

 port無いし、ビルドしようにも公式のmakeファイルにパッチあてろーとか、色々うざくて。。。
2〜3時間頑張ったんですが、DebianPackageにSGEあるのを知ってUbuntuで行こうと(笑)

 そんなわけで、VMWareFusion3にいれてあったUbuntuで環境構築するのに成功しました。
その際のメモです。

 MiyakoはRuby1.9.1以降対応なので、ruby1.9.1をインストールします。
未だにruby1.8.7を使っていたという、Rubyistにあるまじき(ry

$sudo aptitude -y install ruby1.9.1
$sudo aptitude -y install ruby1.9.1-dev
$sudo aptitude -y install rubygems1.9.1
$sudo aptitude -y install irb1.9.1

$ruby1.9.1 -v
=>ruby 1.9.1p378 (2010-01-10 revision 26273) [i486-linux]
$gem1.9.1 -v
=>1.3.5
$irb1.9.1 -v
irb 0.9.5(05/04/13)

1.9.1とタイプするのが苦痛なので、ruby gem irbというシンボリックリンクを/usr/binの中で作りました。

 後は、SDL関係です。
SDLとはOSを意識せずにゲームプログラミングが出来る、良い子のようです。
その辺は全く詳しくないんですが、JVMみたいなノリ?なのかなぁ、と。
必要そうなものを $aptitude search sdl で探して、入れておきました。
入れたモノはここを参照しています。
Ruby/SDLで始めるゲームプログラミング【前編】

$sudo aptitude -y install libsdl-console
$sudo aptitude -y install libsdl-console-dev
$sudo aptitude -y install libsdl-dev
$sudo aptitude -y install libsdl-image1.2
$sudo aptitude -y install libsdl-image1.2-dev
$sudo aptitude -y install libsdl-mixer1.2
$sudo aptitude -y install libsdl-mixer1.2-dev
$sudo aptitude -y install libsdl-sge
$sudo aptitude -y install libsdl-sge-dev
$sudo aptitude -y install libsdl-sound1.2
$sudo aptitude -y install libsdl-sound1.2-dev
$sudo aptitude -y install libsdl-ttf2.0-0
$sudo aptitude -y install libsdl-ttf2.0-dev

 多分、これ必要かなぁ?って入れたのもあるので、必要ないのもあります。
散々手こずらされたSGEもたったの1行でインストール完了!
Ubuntu可愛いよUbuntu

 後は、

$sudo gem install rubysdl
$sudo gem install ruby-miyako --no-ri --no-rdoc

これで完了です。
ええと、--no-ri --no-rdocは、ドキュメント生成に非常に時間がかかるらしいので、省いてね!って公式で言ってたので、従いました。

 なぜかruby-miyakoが一回目は上手く入らなかったらしく、
requireはイケるんですけど、includeでMiyakoなんて見つからないよ!って言われました。
ライブラリの中身を読んで色々試したんですが、再インストールしたら直りましたorz
公式のサンプルもバッチリさ!

 まぁ、これでUbuntuでMiyakoが動く環境が出来ました。
皆さん、良いRubyゲームプログラミングを!!!