Ubuntu upgrade ends up with: No module named 'Zope2'

I upgraded my development server from Ubuntu 19.10 to 20.04.1 LTS
trying to start zope resulted in an error:
bin/runwsgi -dv instance/etc/zope.ini
Traceback (most recent call last):
File "bin/runwsgi", line 5, in
from Zope2.Startup.serve import main
ModuleNotFoundError: No module named 'Zope2'
Has this upgrade corrupted my zope install?


How did you create your development environment? I recommend pyenv or virtualenv to create an independent of system python to prevent apt or yum from hosing my setup.

Not sure what the Python-related differences between Ubuntu 19.10 to 20 are? Perhaps Ubuntu performed an upgrade from Python 3.7 to 3.8 or so...in this case you must rebuild your environment because all installed eggs are specific to a Python major version.

1 Like

Indeed, Ubuntu upgraded python 3.7 to 3.8.
So I installed a fresh Ubuntu VM, but got an error when I tried to install (pip) Zope 4.4.2: python.h no such file or directory
see see terminal output: https://www.dropbox.com/s/me15z0y9gc1gc11/Error%20installing%20zope%204.4.2.txt?dl=0
Any ideas?

You need to install c header files. Something like python-dev or similar. This should be documented in the Zope documentation.

Update: See https://zope.readthedocs.io/en/latest/INSTALL.html

1 Like

Thanks, again, back in business again.
On a side note: I used to have a windows development server up until zope 2.10.9. I haven't been using it for ages, but it traveled with me up unto the latest windows 10 update. Out of curiosity I started this zope instance and it ran flawlessly!