Hi all,
--------------------------------------------------------------------------
This is relevant to you if you are using Python 2.6.3 and you are getting
errors of the sort:
"/usr/local/lib/python2.6/dist-packages/setuptools-0.6c9-
py2.6.egg/setuptools/command/build_ext.py",
line 85, in get_ext_filename
KeyError: '_cl'
--------------------------------------------------------------------------
It seems Python 2.6.3 broke every C/C++ extension on the planet that was
shipped using setuptools (which includes PyCUDA, PyOpenCL, and many more of my
packages.) Thanks for your patience as I've worked through this mess, and to
both Allan and Christine, I'm sorry you've had to deal with this, and thanks
to Allan for pointing me in the right direction.
To make a long story short, I've switched my packages (including PyCUDA) to
use distribute instead of setuptools. All these changes are now in git. I'm
not sure this will help if a 2.6.3 user already has setuptools installed, but
I hope it will at least not make any other case worse. All in all, this seems
like the least bad option given that I expect distribute to be "the way of the
future".
Before I unleash this change full-scale, I would like it to get some testing.
For this purpose, I've created a PyCUDA release candidate package, here:
http://pypi.python.org/pypi/pycuda/0.93.1rc1
PLEASE TEST THIS, and speak up if you do--both positive and negative comments
are much appreciated.
Andreas
PS: Once I have reasonable confirmation that this works for PyCUDA, I'll also
release updated versions of PyOpenCL, meshpy, boostmpi, pyublas, .... The
relevant changes are *already in git* if you'd like to try them now.
PPS: Deciding in favor of distribute and against the promised setuptools
update was based on two factors:
- Primarily, distribute makes a fix for the 2.6.3 issue available *now*.
- Secondarily, I personally disliked the behavior of PJE, the author of
setuptools, in response to the current mess.