windowsでsbcl + lispbuilder-sdl

メモ。環境はwindows 7 64bit。
前半は思い出しながら書いているので間違いもあるかもしれない。quicklisp ができたおかげで昔に比べて結構楽になっているようだ。

sbclをインストールする

http://www.sbcl.org/platform-table.html から windows x86 用をダウンロードする。以下この記事を書いてる時点のsbcl 1.2.1 を仮定。

パスを通す:
スタートメニューで「コンピュータ」を右クリック→「プロパティ」→左にある「システムの詳細設定」→「環境変数
ユーザー環境変数のPATH、SBCL_HOMEの両方にsbclがインストールされた場所を指定する必要がある。これらの環境変数がなければ「新規」で以下を設定、あれば「編集」からセミコロン区切りで以下を追加。

C:\Program Files (x86)\Steel Bank Common Lisp\1.2.1

コマンドプロンプト(Win+R でcmdと打つ)で sbcl と打って動くことを確認。(quit)で終了。

lispbuilder-sdlに必要なバイナリをインストール

本家から必要なライブラリ類をインストールする。
http://code.google.com/p/lispbuilder/downloads/list から以下をダウンロード。

  • win32-lispbuilder-sdl-gfx-binaries-2.0.13.tgz
  • win32-lispbuilder-sdl-ttf-binaries-2.0.9.tgz
  • win32-lispbuilder-sdl-mixer-binaries-1.2.11.tgz
  • win32-lispbuilder-sdl-image-binaries-1.2.10.tgz
  • win32-lispbuilder-sdl-binaries-1.2.14.tgz
  • lispbuilder-sdl-ttf-0.3.0.tgz
  • lispbuilder-sdl-mixer-0.4.tgz
  • lispbuilder-sdl-image-0.5.0.tgz
  • lispbuilder-sdl-gfx-0.7.0.tgz
  • lispbuilder-sdl-0.9.8.1.tgz

sbclをインストールしたディレクトリにsiteという名のディレクトリ(C:\Program Files (x86)\Steel Bank Common Lisp\1.2.1\site)を作って、ダウンロードしてきたファイルを全部ここに解凍する。

quicklispをインストールする

http://beta.quicklisp.org/quicklisp.lisp をホームディレクト*1 C:\Users\USERNAME\ にダウンロードしてsbclから (load "quicklisp.lisp") で読み込む。
読み込めたようなら (quicklisp-quickstart:install) (ql:add-to-init-file) する。

slimeを使いたいなら (ql:quickload "quicklisp-slime-helper") もして、出てくる指示にそって .emacs に追記するといいのだと思う。

lispbuilder-sdl をインストールする

sbclから (ql:quickload :lispbuilder-sdl) する。
大丈夫そうなら (ql:quickload :lispbuilder-sdl-examples) して、(sdl-examples:mandelbrot) とか (sdl-examples:fireworks) とかしてみる。それっぽい画面が出たらok。

ちなみに (do-external-symbols (s :sdl-examples) (when (fboundp s) (print s))) とするとデモ一覧が見られる。

*1:じゃなくてもいいけど面倒なので