I have recently installed all of the X11 packages in the cygwin setup and now have is massive annoying error with not being able to see gitk. Everything was working perfectly well until I installed this stuff.
Before I had this issue I didn't really note done any of the configuration I merely started xwinserver went to my branch and typed gitk and everything appeared. Now I have to put in my display as it claims the display is not set. I export my display settings check that it is set properly by running xclock which does appear. Then I get the issue:
1 [main] wish8.5 3436 child_info_fork::abort: data segment start: parent(0x4CF000) != child(0x67F000) Error in startup script: unknown color name "SystemButtonFace" while executing "winfo rgb . $c" (procedure "setui" line 3) invoked from within "setui $uicolor" (file "C:\cygwin\bin\gitk" line 11504)
Not got a clue what this is. I have seen a couple of relevant questions but no answers.
Notes: I am using Windows 7 64 bit and using a Bash shell
Update: I am still getting exactly the same error. This is really frustrating! I may just download Debian
I was able to get gitk working as of today with the following versions on Win 7 64 Bit :
$ cygcheck -c cygwin git gitk tcl tcl-tk
Cygwin Package Information
Package Version Status
cygwin 1.7.10-1 OK
git 1.7.9-1 OK
gitk 1.7.9-1 OK
tcl 8.5.11-1 OK
tcl-tk 8.5.11-1 OK
The most valuable link was the one posted by aap. That led me to all the other steps.
To fix the fork failures follow this link from Cygwin FAQ. The steps I followed were as follows:
Start -> Run -> ash.exe -> /bin/rebaseall (There was no output when I ran that command)
One of the reasons why you might get fork failures is the presence of Antivirus/Firewall/Spyware-cleaner softwares.
In my case the BLODA softwares listed as reasons for the fork failures was McAfee which I have on my work pc. The fix was to move the Cygwin directory inside a folder excluded by McAfee's OAS and create a symbolic link to the old location like so:
mklink /D C:\Cygwin C:\Dev\Cygwin
C:\Dev is the excluded folder
The folder exclusions can be configured using the Viruscan Console. To test whether your current Cygwin directory is excluded see this.
Starting GITK
startx&
export DISPLAY=localhost:1.0
export DISPLAY=localhost:0.0
gitk&
gitk&
Seems there are three issues here.
DISPLAY requirement is due to Cygwin Tk changing to require X.
SystemButtonFace error is also due to the same change. The recommended fix is to remove your ~/.gitk settings file, or at least the line in that file referencing SystemButtonFace.
fork issue -- seems to require rebaseall.
Note also that there is an updated version 1.7.9 of git and gitk finding its way to the cygwin mirrors, but by itself that version did not solve the problem for me.
Based on the above answer, I did a different fix. In my ~/.bash_profile
, I added the following:
startxwin >/dev/null 2>&1
export DISPLAY=localhost:0.0
I think that's a better solution than adding gitk& to the ~/.startxwinrc, since then it only works with gitk. This way you can then do git gui and other things as well.
The other answers suggesting to remove ~/.gitk pointed in the right direction, but in new releases the config file is in ~/.config/git/gitk by default, as pointed by the manual.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With