windowsでsbcl+lispbuilderのセットアップ
chatonのCL部屋で困ってる人がいたみたいなので。
ここのsbclのwindows forkを使えば最速(全プラットフォーム中)でサンプルの動作まで持っていけるはず。
配布のこととかも考えたらライブラリの配置、ロード方法をしっかり理解しといた方が良いとは思うけどとりあえず動かすまでを最優先で。
1. sbcl windows forkのダウンロード
ここからStand-alone executableってのをダウンロード。
zipファイルを展開して出てくるsbcl-with-contrib-win32-うんたらかんたら.exeをパスの通ってる場所に置き、名前が長いのでsbcl.exeにリネームしておく。
2. sdl.dllのダウンロード
公式サイトからwindows用バイナリ(dll)をダウンロード
zipファイルを展開して出てくるsdl.dllをパスの通ってる場所に置く。
※ 今回スクリーンショットを撮るにあたって、新規環境でのセットアップをシミュレートするためwindowsにGuestログインし、C:\Users\Guest\bin というフォルダを作ってここにパスを通してsbcl.exeとsdl.dllを置いている。
3. sbcl起動 & lispbuilder-sdlインストール
コマンドプロンプトからsbclを起動し、おもむろに ":ql lispbuilder-sdl-examples" とタイプしてリターン
するとまずquicklispのインストールが始まります。
このsbclのwindows forkにはquicklisp用のREPLコマンドが組み込んであってとっても便利。
ちなみにquicklispはexeに埋め込まれてるわけではなく、qlコマンドの初回使用時に最新版を取得してインストールするようになってるっぽいです。
quicklispのインストールが完了すると絶え間なくlispbuilder-sdl-examplesのロードが始まり、依存するライブラリがインストール&ロードされて行きます。
SLIMEのセットアップ
折角なのでEmacsとSlimeのセットアップもしてみよう。
1. quicklisp-slime-helperのインストール
SLIMEのインストールもquicklispでやっちゃえば簡単。
:ql quicklisp-slime-helper と打ち込んでインストール。
インストール完了後、.emacsの設定方法が表示されるのでコピペしておく。
(load (expand-file-name "~/AppData/Local/common-lisp/quicklisp/slime-helper.el")) ;; Replace "sbcl" with the path to your implementation (setq inferior-lisp-program "sbcl")
Win7なら↑これ。XPだとslime-helper.elのパスが変わるはず。
2. .sbclrcの設定
quicklispは:qlコマンドを使うまでロードされないので、REPLコマンドが使えないSLIMEからquicklispを使うにはsbclの初期化ファイル .sbclrc でロードするよう設定が必要。
コマンドプロンプトで起動してるsbclのREPLから (ql:add-to-init-file) を実行すれば .sbclrc に必要な設定が書き込まれます。