endless pulse

どっくんどっくんふるえる毎日を過ごしています

MacでspinとXspin

近況報告ブログからの移転ですー
10/08/03



なんか…最近おぼえがきしか書いてない気がするので、
そのうちこのへんははてなの方に移行します。。
とりあえずおぼえがき!

授業のために、久しぶりにspinを使うことになったので、
spinとXspinを入れてみました。

で、Macportsで検索したらspinを発見。
わーいと思っていれました。

$ sudo port install spin

Xspinのためには、
tclとtkとwishが必要みたい。
tclだけ入ってなかったのだけど、
またMacportsに発見したので、利用!

$ sudo port install tcl

tkもMacportsにあった。
wishはないみたい。。

で、当のXspinもMacportsにないので、
spinのサイトから、
xspin***.tcl(2010/8/3の時点ではxspin525.tcl)をげっと。
emacsだかで開いて、
3行目を

exec wish /opt/local/bin/xspin -- $*

に書き換える。
(よくわからないけど、つまりxspinを置きたい場所の絶対パスをかく。)
で、そしたらそのファイルを
/opt/local/bin/に"xspin"っていう名前で保存する。

$ sudo cp xpin***.tcl /opt/local/bin/xspin
$ sudo chmod +x xspin


さて終了。

$ xspin

とやると、GUIなXspinが開く。

さて簡単なHelloWorldのPromelaをシミュレーション。

え、

spin: preprocessing failed

とかいう表示で止まる。
何度やってもそう。


xspin***.tclの中のspinを絶対パスで渡しても駄目。
なんなの!


コマンドラインでspinを動かしてみた…

$ spin -a helloworld.pml
sh: /lib/cpp: No such file or directory
spin: preprocessing failed

こんなエラーが出た。
/lib/cpp?
だいいちlibフォルダ自体がないぞw

よくわからなかったので、

$ sudo mkdir /lib
$ sudo ln -s /usr/bin/cpp /lib/cpp


で、再実行。
spinは無事通ったので、Xspinで再チャレンジしたら、
無事うごきました。
ふー。


@k6ky曰く、spinの公式ページに「Mac OSは/lib/cppがないからシンボリックリンクはってね!」みたいな記述があるらしい。

どうやら対処法は正解のようだwちなみにcppの場所はlocateで調べました。C++のファイルが大量にヒットして調べるのが大変だったw