昼行灯行状記 Ver.6
とあるフリー編集者の日常

Macで将棋検討 – ShogiGUIをmacOSで使う

6月 22nd 2021 in Mac, shogi
[`evernote` not found]


Windowsでの検討で広く使われているShogiGUIですが、残念ながらmasOSへの対応予定はないと作者の方が述べておられます。それでもなんとか「MacでShogiGUIを使いたい」という物好きのために、WineskinServerを使ってShogiGUIを動作指せるためのメモです。

WineskinServerのインストール

GitHubからWineskinServerプロジェクトページ下部にある「Manually Installation:Downkiad Wineskin Winery」から最新版のアーカイブ(.txz)をダウンロードします。

以下将棋GUIインストールの前までははPC Watchの西川さんの記事を参考にしてください。将棋GUIインストール部分も記事のアプリインストール部分が参考になります。

 









将棋GUIのインストール

ShogiGUIのインストーラをダウンロードしておきます。


次にWrapperを生成します。名前はShogiGUIとでもしておきましょう。

~/Applications/Wineskinの下に生成されたWrapper(ShogiGUI.app)をダブルクリックし、パネルから「Install Software」をクリックします。

「Create Setup Executable」をクリックし、ShogiGUIのインストーラを指定するとインストールが始まります。










まだ日本語が化けていますが、気にせずインストールを進めます(後段で修正します)。

 

「デスクトップにショートカットを表示する」のチェックボックスは外しておいてもokでしょう。









インストールが終わると、実行ファイルを指定するダイアログが表示されます。アンインストーラになっているので、ShogiGUI.exeを指定します。

 

 









代替フォントの指定と動作環境の整備

日本語を表示できるようにします。Wrapperのメニューから「Advanced」をクリックし、「Tools」タブの中央にある「Winetricks」をクリックします。

 









検索フィールドに「fakejapanese」と入力し、「Fonts」から「fakejapanese」関連を図のようにチェックし、「Run」をクリックします。「Yes」を選ぶとインストールが開始され、「Close」がアクティブになれば終了です。

 









ShogiGUIの動作には.NET 4.5以降の環境が必要なため、必要なファイルをインストールします。

「Winetricks」の検索フィールドに「.net」と入力し「dlls」を下方にスクロール、「MS .NET 4.8」を選択します(ここでは「dotnetcpredesktop3」および「mfc70」も選択していますが、これは必要ないかもしれません:未検証)

選択したら同様に「Run」をクリックし「Yes」でインストールされます。

 









インストール終了後、「Close」をクリックし、「Winetricks」の「Tools」タブの右下にある「Test Run」をクリックして、ShogiGUIが起動するかテストしてみましょう。

 

 









ShogiGUIが立ち上がれば成功です。

 

 

 









エンジンの登録

Windows用のバイナリをそのまま登録できます。登録のダイアログはWindowsに準拠しているため、Macユーザーにはなじみのないものかもしれません。「My Documents」の下がそのまま「ホーム」、「My Computer」の下の「(C:)」は、Wrapperを右クリックし「パッケージの内容を表示」させたときの「drive_c」フォルダになります。

このdrive_c/Program Files(x86)の下にShogiGUIフォルダがあります。このフォルダの下に将棋エンジンのフォルダを入れておけば、Wrapper(ShogiGUI.app)をコピーするだけで他のMacにも簡単に環境を移動できます。

M1 Macの場合は、前の記事でも書いたようにRosetta2がSSE4.2までのサポートなので、WindowsバイナリはSSE4.2版を、新しめのIntel MacではAVX2版を使うのがよいでしょう。









ちょっと重たいかな?

GUIの操作がちょっともっさりしているのだけど、解析したりする分には十分な感じです。これでMacでも評価値グラフや、継ぎ盤が使えるのは嬉しいですね。




required



required - won't be displayed


Your Comment:

やねうら王のソースをビルドする
GitHub/yaneurao/Yaneuraouからやねうら王のソースをダウンロード
AppleSiliconのMacで、Rosetta2を使う場合は、Rosetta2がAVXサポートしていない(SSE4.2まで)ので、MakefileのTERGET_CPUの項目をSSE42に変更(新しめのIntel Macではそのままでok)

#TARGET_CPU = AVX2
TARGET_CPU = SSE42

コンパイラをg++に変更(もちろんxcode入ってますよね?)

COMPILER = g++
#COMPILER = clang++

※macOS 11 (BigSur)ではg++にするだけでok、macOS 10.xでは別途g++の最新版を入れる必要がありそう。詳細は検索してください。
 

あとはmakeするだけ……なのだけど、Intelバイナリでビルドする必要があるため、ユニバーサルバイナリのターミナル.appを明示的にRosettaを使用して開く必要があります。
ターミナルの情報を表示し、「Rosettaを使用して開く」にチェックを付けてターミナルを開きます。
 

makeを実行。YaneuraOu-by-gccという実行ファイルがビルドされます。

 
 

これを開いて動作確認。ターミナルウインドウにusiと入力し、リターン。「usiok」と返ってくれば動作確認完了です。
 
 

エンジンのフォルダ構成はWindowsと同じようにして、Windowsの実行ファイル(.exeファイル)の代わりにビルドしたバイナリを置きます。
engine_name.txtを評価関数や探索部に合わせて変えておきます。図は探索部にやねうら王6.03を使った水匠3改で、M1 MacのRosetta2で動作させることもあり、「Suisho3Kai/YO6.03_NNUE_Rosetta2」としています。
 

将棋所Macをダウンロード

将棋所Macをダウンロード・インストールします。High Sierra以降で使えます。
エンジン設定からビルドしたエンジンを設定すれば、検討・解析が行えます。
 
 
 
 
 

おまけ:ARM64バイナリでビルドする
source/extra/bitop.hの174行目の#elif文の最後に、
|| defined(__arm64__)
を括弧の数に注意して追加すれば、一応ARM64でのバイナリをネイティブのターミナルから通せる…けど、恐らくは浮動小数点演算の専用命令を使ってないため、Rosetta2使用よりNPSが出てません。誰かえらいプログラマのひと、なんとかして欲しいなぁ……。

Previous Entry

Blogroll