My Gaim has been crashing on startup on my windows box for few days now. I haven’t really noticed it because I have been screwing around with AIM Triton. But today I wanted to use Jabber and I could not get Gaim up.
After mucking around for about an hour, getting a headache, and reinstalling gtk and gaim several times I finally found the issue:
TCL Loader Plugin + Cygwin = WinGaim crash – Starting with 0.75, Win Gaim comes with a tcl plugin loader. The loader plugin is dependant on tcl84.dll and will use the first one found in the dll search path. If you have a cygwin installation (with tcl 8.4), and have added its bin directory to your PATH, then WinGaim will crash on startup. The solution is to remove cygwin’s bin directory from your path. Introducing cygwin dlls into the native win32 environment is a very bad idea, and is likely to cause problems with other programs.
I recently set up an ssh server on my windows box, and this required me to add cygwin binaries to my windows path. I also noticed that Gimp also wigs out on startup now. I wonder how many other things did I break. Welcome to dll hell. This is stupid!
Once the cygwin entry was removed from the path, Gaim started working again. The sshd service is still running. I hope it won’t have problems starting again because of the path. In the worst case I will need to manually get it moving after each reboot (which usually works out to be 2-3 times a month with my windows box). I should be able to manage that…