SBCL 1.0.19
Windowsでメモリ確保に失敗する不具合が改善されたらしい。
(via: http://cadr.g.hatena.ne.jp/haiju/20080807#1218118603)
1.0.13は環境(メモリの空き?)によって全く問題なく動いたり、clear type切ると動いたり、起動オプションのdynamic-space-sizeで調整してやらないとどうにも起動できなかったりしたんだけど、直ったんだ。やった。
Win32用バイナリのインストーラがうpされてたけど、折角なので自前でビルドしてみる。Cygwin or MsysとSBCLがあればOKなのかな?
とりあえずMsysからsbcl使えるようにパス通しておいて、sbclのソースを展開したフォルダで sh make.sh
結果
WARNING! Some of the contrib modules did not build successfully or pass their self-tests. Failed contribs:" sb-simple-streams
なんか1個モジュールのビルドに失敗。
lispforumにあったのもsb-simple-streamsは入ってないみたいだからまあいいや。
次、test
Status: Failure: filesys.pure.lisp / RANDOM-NATIVE-NAMESTRINGS Failure: filesys.pure.lisp / FILE-AUTHOR-STRINGP Failure: interface.pure.lisp / WITH-TIMEOUT-FORMS Failure: stream.pure.lisp / (STREAM LISTEN-VS-SELECT) Unhandled error clos-interrupts.impure.lisp Unhandled error deadline.impure.lisp Expected failure: debug.impure.lisp / (UNDEFINED-FUNCTION BUG-353) Invalid exit status: exhaust.impure.lisp Failure: external-format.impure.lisp / (CHARACTER-DECODE-LARGE ATTEMPT-RESYNC) Expected failure: external-format.impure.lisp / (CHARACTER-DECODE-LARGE FORCE-END-OF-FILE) Unhandled error foreign-stack-alignment.impure.lisp Unhandled error load.impure.lisp Unhandled error pathnames.impure.lisp Unhandled error print.impure.lisp Failure: run-program.impure.lisp / RUN-PROGRAM-CAT-1 Failure: signals.impure.lisp / (ASYNC-UNWIND SPECIALS) Unhandled error stream.impure.lisp Unhandled error threads.impure.lisp Failure: timer.impure.lisp / (TIMER RELATIVE) Failure: timer.impure.lisp / (TIMER ABSOLUTE) Failure: timer.impure.lisp / (TIMER REPEAT-AND-UNSCHEDULE) Failure: timer.impure.lisp / (TIMER RESCHEDULE) Failure: timer.impure.lisp / (TIMER STRESS) Failure: timer.impure.lisp / (WITH-TIMEOUT TIMEOUT) Failure: timer.impure.lisp / (WITH-TIMEOUT NESTED-TIMEOUT-SMALLER) Failure: timer.impure.lisp / (WITH-TIMEOUT NESTED-TIMEOUT-BIGGER) Invalid exit status: unwind-to-frame-and-call.impure.lisp test failed, expected 104 return code, got 1
後でLinuxとかの結果と比べてみよう。
WiXを入れておくと、sh make-windows-installer.sh でWindows用インストーラが作成できる。環境変数の設定とかもやってくれるので、install.shは使わずこのインストーラからインストール。
起動オプションいじらなくても問題なく動く。
gdi++に半透明とか使っても問題なし。良い感じ。