Cygwinのターミナルでgitkを利用しようとすると、以下のメッセージでエラー。
Application initialization failed: no display name and no $DISPLAY environment variable
Error in startup script: no display name and no $DISPLAY environment variable
while executing
“load /usr/lib/tk8.5/../../bin/libtk8.5.dll Tk”
(“package ifneeded Tk 8.5.11” script)
invoked from within
“package require Tk”
(file “/usr/bin/gitk” line 10)
調べてみると、仕様変更によって、x win serverを起動しないといけないらしい。
今回の情報源はココを参考。
Xwin サーバを立ち上げて、Cygwinからgitkを使えるようにする
まずは、xinit/xorg-serverを Cygwinのsetup.exeからインストール。
xwinサーバを立ちあげる。
startxwin >/dev/null 2>&1
環境変数を設定する。
export DISPLAY=localhost:0.0
gitkを実行すると、まだ、エラーがでる。
Error in startup script: unknown color name “SystemButtonFace”
while executing
“winfo rgb . $c”
(procedure “setui” line 3)
invoked from within
“setui $uicolor”
(file “/usr/bin/gitk” line 11522)
これは古いgitkがあると駄目っぽい。.gitkを削除。
rm ~/.gitk
gitkを再起動して、起動された。
~/.bash_profileに起動のためのコマンド追加
gitkを使おうするたびに、コマンドを叩くのは面倒なので、~/.bash_profileに以下の2つのコマンドを記入する。
startxwin >/dev/null 2>&1
export DISPLAY=localhost:0.0
これで今まで通り、gitkコマンドを叩くだけで、開けるようになった。
gitk
環境
$ cygcheck -c cygwin git gitk
Cygwin Package Information
Package Version Status
cygwin 1.7.17-1 OK
git 1.7.9-1 OK
gitk 1.7.9-1 OK
Windows7 64bit