Windowsでもunison動かしたい


Unison自体については「ssh越しにAtom他GUIエディタを使いたい?それ、同期ツールunisonでできるよ - Qiita」が良いかと思います。
Windows 10でUnisonの最新版をインストールした、という話です。

試した環境

  • Windows 10 64bit
  • Cygwin 2.4.1
  • Unison 2.48.3

その1 バイナリバージョンを見てみる

http://unison-binaries.inria.fr/ にあります。
が、接続先のUnisonとバージョン違うと動かないはずだし、こんな古いバージョン入れたくないな... ということで敬遠。

追記

@dsegさんのコメント通り、
http://www.pps.univ-paris-diderot.fr/~vouillon/unison/ に最新版があるようです。

なのでこれ以降の情報は不要かと思いますが、興味のある方はやってみてください。

その2 ソースからビルド

ソースは http://www.seas.upenn.edu/~bcpierce/unison//download/releases/stable/unison-2.48.3.tar.gz にあります。
以下の内容は概ね上記パッケージ内のINSTALL.win32-cygwin-gnucの内容に基いています。
今回ビルドしたのはCLI版のみですが、意外と簡単でした。

Cygwinとパッケージのインストール

Cygwin自体のインストール方法に関しては、インストーラーを実行してでポチポチ押している間に、
追加のパッケージを指定しなければならない、ということだけ明記しておきましょう。
こちらに書いてあるような画面での話です。
デフォルトでインストールされるものの他に、以下のものが必要でした。

  • make
  • ctags
  • openssh
  • OCaml 4.02.3 (多分他のバージョンでも大丈夫だと思いますが。3系以降が必須だそうです。)

他にもあるかと思いますがまとめてカテゴリーを選択して入れたので申し訳なくもちゃんと把握しておりません。
足りてない場合は下記のmakeコマンドでエラーが出るのでそれを元に足りないものを入れなおしましょう。
インストーラー(setup.exe)を再実行すればもう一度パッケージ選択画面に飛べます。
(多分コマンド1個で入れるのとかあるんだろうな、とは思いますが今回はUnisonをビルドするためだけなので。)

あ、あと、多分無難だろうということで32bitにしました。

ビルド

先ほどダウンロードしたパッケージを解凍後、以下のコマンドを実行してください。
この手のコンパイルをされたことがある方には朝飯前ですね。./configureすらありません!

cd ~/path/to/unison-2.48.3
make

ビルドできたら実行してみましょう!

$ unison -version
unison version 2.48.3

以上、超ざっくりですがソースからのビルドも案外楽だったよ、ということで!