Wednesday, September 13, 2006

Debian and Python

I've just got glChess to work under Debian Unstable (Sid). Details on the homepage.

This is all thanks to a guy called Guy for reporting it didn't install. I ended up getting Debian running under VMware player and found the issues. They are:

  • Debian doesn't have the Python version in their library package names. So where in Ubuntu we have python2.4-gtk2 Debian now has only python-gtk2. And this package contains the gtk2 bindings for both python 2.3 and 2.4. This seems silly because I can't specify (easily) that I want Python 2.4 and what happens when Python 2.5, 2.6 ... are released? What if you want to save space (e.g. on an embedded system) and drop all support for 2.3?

  • And the madness continues. Instead of putting all the non-core libraries in /usr/lib/python2.4/site-packages they now go in /usr/lib/python-support/python-gtk2/python2.4/. So even though you have only one library address space they're split across directories. Why? It just seems to be overly complicated and an easy way to have address space collisions. I had to rebuild the GtkGLExt bindings but this turned out to be as easy as replacing dh_python with dh_pysupport (I love you debhelper!)

So the long and short of it is I need seperate packages for Debian and Ubuntu. The glChess package only has different dependencies but the GtkGLExt bindings need to be built differently. *sigh*

1 comment:

Anonymous said...

Hi Bob

Can you provide more details on fixing this problem. like a step by step procedure. Glchess is crashing on my debian too and i would like to see if your fix works.