読者です 読者をやめる 読者になる 読者になる

ai65536's blog

将棋とかプログラムとか

LinuxでShogiGUIを使ってみる

2chのコンピュータ将棋スレにLinuxでの動作報告があったので、 とりあえず対局や検討をひと通り動作確認してみる。

 

動作確認環境

 

ShogiGUI ver 0.0.3.11

VMWare Player Ubuntu 12.0.4

Mono ver 3.2.1

 

動作環境は仮想マシンです。

エンジンは上記環境でビルドしたgpsfish r2837を使いました。

 

NG項目

棋譜のコピー/貼り付け

   Linux -> Linux NG
   Windows -> Linux OK
   Linux -> Windows ?

・将棋盤の画像を保存

   画像が壊れてる

・駒音が鳴らない

・コア数(プロセッサ数)表示がでない
・Docking Windowのレイアウト変更ができない
 単なるタブとして動作している。
 レイアウトは一応覚えているっぽい(Windows側で操作すると一応再現できる)


・終了時に盛大にエラーを吐く
・盤面の段の数字の向きが変
・盤面の罫線がはみ出している?


☆対局でCOMの思考2回目くらいで止まる(Linuxごと止まる)

 

対局が致命的ですね。検討や棋譜解析は動作していました。

エンジン設定のプロパティエディタの部分は2chの動作報告時に気になった箇所を変更していて、その対応のおかげか正常に動作していました。

 

さすがに致命的な☆の部分を調べてみる

Ver 0.0.3.8を試しに動かすと、正常に対局できる。
0.0.3.9で入れ込んだ不具合のみたいですね。

  

コンソールにログを出してみると、セマホ待ちで死んでるっぽい。

で、よくよくソースコードを見ると、一箇所WaitAsyncというのを間違って使っているのを発見。

これをWaitに直すと正しく動作する模様。

これは次のリリースで修正したほうが良さそうですね。

 

まとめ

ShogiGUIはとりあえずLinuxで対局、検討、棋譜解析が動作するようになった。

 Docking Window周りはライブラリを使っていて手がだせませんが、

それ以外はWindowsとMonoの微妙な実装の違いっぽい不具合ですね。

対応を入れたほうが互換性のとれた、良い実装になりそうですが、

まあ、致命的でもないんでそのままですかね。

 

あと動作確認ではLinux上でビルドしたエンジンを使いましたが、Windowsのバイナリ(.EXE)は動作可能なんだろうか?

CILイメージじゃないとか言われて動作しないんだけど。

追記:exeは以下の様なシェススクリプトを書くと回避できた。

 #!/bin/sh

./gpsfish.exe

 

 

わざわざLinuxでShogiGUIを使いたいという人たちは、エンジンはどうするんだろうか?自前でgpsfishをビルドするの?それともWindowsのバイナリが動作するるんだろうか?

ちょっと謎ですね。