13 July 2009
Last night, I began some volunteer Plone 3 development work for a local robotics organization. My first step was to create a buildout on my Ubuntu 9.04 workstation where I do my development. I ran the usual set of commands to create, bootstrap, and build a new one. Everything went normally, until I attempted to start the buildout in foreground with the following:
python2.4 bin/instance fg
For some reason, the instance did not start. Instead, I received the following Python error:
ImportError: No module named PIL
My first thought was to check Synaptic to make sure that the
python-imaging package (which contains a copy of PIL, the Python
Imaging Library) was installed properly. It’s possible that I could
have uninstalled it accidentally. Suprisingly, according to Synaptic,
python-imaging package was installed.
Was my Python 2.4 installation somehow corrupted? I tried reinstalling all of my Python packages. Unfortunately, even after that, I still received that PIL ImportError.
Eventually, I decided to stop trying to get the official Ubuntu packages to work. I usually rely on the Ubuntu repositories because installing software through other means may cause problems in the future if one tries to upgrade to the next distribution release (e.g. Ubuntu 9.10) using the in-place upgrader.
Instead, I decided to install the Python Imaging Library with the
easy_install utility, as suggested in the “A note about PIL” section
of Pinax’s documenation. To do this, I ran the following command:
sudo easy_install -i http://dist.serverzen.com/pypi/simple PILwoTk
After installing PIL with the above method, my Plone 3 buildout worked. It appears that the current Ubuntu PIL packages are broken for some reason. If you need PIL and cannot get the Ubuntu PIL packages to work, this provides a simple workaround.
Have a comment to share? I’d love to hear it. Just @mention me on Twitter.