« Exerb的コネタを一つ | メイン | C70のKMCDを購入された方へのお詫び »
2006年7月23日
FreeBSDでRuby/SDL
なんとなくふと気が向いたのでVirtualPCを使ってFreeBSDをインストールし、そこでRuby/SDLを動かしてみました。
ええ、もちろん試験勉強からの現実逃避ですよ。
orz
試した環境はVirtualPC2004+FreeBSD6.1-RELEASE-i386です。
1,まずXとports、CVSup、 portupgradeが動いている環境にしてください。具体的な作業については各自で調べてください。俺が参考にしたサイトは
FreeBSD 6.0/i386 note
FreeBSD Memo
などです。
2,次にSDL関係をインストールしていきます。
# portinstall sdl12
# portinstall sdl_image
# portinstall sdl_mixir
# portinstall sdl_ttf
これでSDL本体、sdl_mixer、sdl_image、sdl_ttfがインストールされます。この当たりでおそらくfreetype2やらsmpegなどもインストールされると思います。
3,次に、portsにないSGEをインストールします。これが一番大変でした。
最初に取ってきたソースに変更を加えます。具体的にはsge_tt_text.cppにおいて
#include <freetype/freetype.h>
↓
#include <ft2build.h>
#include <FT_FREETYPE_H>
に書き換えます。
次にMakefile.confの中にあるsdl-configを全部sdl11-configに書き換えます。
そして、通常ならここでmakeを使ってインストールするんですが、FreeBSDは特殊なmakeを使っているのでここではgmakeというコマンドで実行します。
最後に/usr/local/include/SDL/の中にいろいろファイルがインストールされていますが、それを /usr/local/include/SDL11/にコピーしてください。
4,次に、音関係のセッティングをします。なぜか初期設定では音のデバイスが見つからなかった(kldstat snd_driverでも何も起こらなかった)のでOSS、Open Sound Systemをインストールします。公式サイト、4Front TechnologiesからFreeBSD6.1を選んでインストールします。デバイス選択画面ではSoundBlaster16(どうやらVirtualPCがそうなってるらしい)を選択し、後は適当に選んで(このあたりよく分かりません)、テストを行うと、おお、確かに音が鳴っている。ちょっと雑音がするけど。
でもって、インストール終わったあとは
#/usr/lib/oss/bin/soundon
で起動しておいてください。
5,やっとここでRuby/SDLのインストールです。これは
#portinstall ruby18-sdlで終わります。ruby-sdlではないので注意。
6,お疲れさまでした。これでおそらく起動出来ると思います。ちなみに私はこんな画面がでました。
FreeBSDで動くRuby/SDLゲーム
ネタバレ防止の為一部モザイクを書けています、その点はご了承ください。
後、俺の環境では起動時に[Couldn't set audio blocking mode]というエラーが出ます。仕方ないので音関係を全部切って実行するようにしています。
というわけでなんとかFreeBSDでもRuby/SDLが動くようになりました。ただこれ以上はしばらくはFreeBSDにはさわりたくないです。コンパイルだけでものすごく時間かかるのはつらいっす(Firefoxで4時間ぐらい)。
7/25 いろいろ表示がおかしかったので修正
投稿者 mak : 2006年7月23日 02:54
トラックバック
このエントリーのトラックバックURL:
http://sorakaze.net/cgi-bin/blog/mt-tb.cgi/94
コメントする