• このエントリーをはてなブックマークに追加

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

image

環境

$ 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