色んな所の情報をみてもスッキリ出来なかったので、自分で情報を書くよ。これを見れば roswell つかって cl-project つかって rove でテスト、、、まで出来るはず。
roswell
roswell はインストール済みとするよ。で sbcl-bin も roswell でインストール済みとするよ。
どんなシステム使っているのかよくわからなくなるよ。そんなときは ros configで確認できます。
たぶん sbcl でしょう。一択です。
cl-project
プロジェクトの雛形を作るには cl-project で作ります。といっても cargo みたいに便利なツールがあるわけではなくros から呼びます。
好みによるのですが、src の下に main.lisp が出来るので、これを package.lisp に変えました。後、 README.org を削除し、README.markdown を README.md に変更。
cl-emb
cl-emb はどうやらメンテナーがどっかのタイミングで変わったのですがそのまま github に2つある。ros で install すれば問題ないのですが、たまたま自分の場合 ~/common-lisp に古い cl-emb を clone していて混乱しました。
ROS スクリプト
この時点では雛形が出来ただけなので何も出来ません。そこで ros で script を作ります。
これで simple-test.ros が出来ますが、パスを教えていないのでパッケージを探せません。
パッケージを探せ!
quicklisp は ASDF に依存している(らしい)。~/.config/common-lisp/source-registry.conf.d/にその設定を書いてある。私の場合 00-debug.conf というのを作っている。
ほかの blog にあるように~/.roswell/local-projects/ にシンボリック・リンクを貼ったりros スクリプトを書き換えてもいいのだが、よくよく考えたらデバッグ中は ~/Lisp/Debug にシンボリック・リンク、デバッグが終わったら ~/Lisp に移動とするように自分でルールを決めていたのでそれに従うことにした。
スクリプトのテスト
src に simd-pe.lisp を追加してテスト用関数を作る。package.lisp で export して、ros スクリプトから呼ぶようにする。
#|-*- mode:lisp -*-|#
#|
これで ros スクリプトが走るはず。はい。おめでとう。ちゃんと実行できました。
rove のテスト
cl-project にしても rove にしても情報が少なく過ぎて使い方に確信を持てない。まず rove のインストール。ros で install。
すると ~/.roswell/bin に rove がインストールされる。
実行にはどうやら asd ファイルを指定するみたい。
初期設定のままなので (= 1 1) を評価して ok とかしている。後、実際には文字に緑の色がつく。なんだろうな reporter って。謎。
とりあえずこれで初期設定は出来た。