The traceback is not as useful here as the error gcc threw up when it failed to compile ExtensionClass.c. So I'm going to get out my magic crystal ball and guess what your problem is.
The ball says you don't have the Python 1.5.2 development libries installed. Either install the RPM or the sources from python.org.
-Michel
Unfortunately I have the python-devel-1.5.2.-1mdk.rpm from the Mandrake 6.1 distro. I don't know if it helps you more but here it goes the full traceback. bash$ python -O w_pcgi.py ------------------------------------------------------------------------------ Building the PCGI wrapper ./configure creating cache ./config.cache checking for gcc... gcc checking whether the C compiler (gcc ) works... yes checking whether the C compiler (gcc ) is a cross-compiler... no checking whether we are using GNU C... yes checking whether gcc accepts -g... yes checking how to run the C preprocessor... gcc -E checking MACHDEP... linux2 checking for inet_addr in -lnsl... yes checking for socket in -lsocket... no checking for ANSI C header files... yes checking for sys/wait.h that is POSIX.1 compatible... yes checking for unistd.h... yes checking for working const... yes checking for pid_t... yes checking return type of signal handlers... void checking for putenv... yes checking for socket... yes checking for strerror... yes checking for union semun... no updating cache ./config.cache creating ./config.status creating Makefile make gcc -c -I. -I. -DPCGI_WRAPPER_MAIN -DVERSION=\"2.0a5\" -DSTDC_HEADERS=1 -DHAVE_ SYS_WAIT_H=1 -DHAVE_UNISTD_H=1 -DRETSIGTYPE=void -DHAVE_PUTENV=1 -DHAVE_SOCKET=1 -DHAVE_STRERROR=1 -DUNIX -DOPT_NO_STDERR -DCLOSE_FDS ./pcgi-wrapper.c gcc -c -I. -I. -DSTDC_HEADERS=1 -DHAVE_SYS_WAIT_H=1 -DHAVE_UNISTD_H=1 -DRETSIGT YPE=void -DHAVE_PUTENV=1 -DHAVE_SOCKET=1 -DHAVE_STRERROR=1 -DUNIX -DOPT_NO_STDE RR -DCLOSE_FDS ./parseinfo.c gcc -lnsl -o pcgi-wrapper pcgi-wrapper.o parseinfo.o gcc -c -o ./Test/parseinfo.o -I. -I. -I./Test -DMAIN_PARSEINFO -DSTDC_HEADERS=1 -DHAVE_SYS_WAIT_H=1 -DHAVE_UNISTD_H=1 -DRETSIGTYPE=void -DHAVE_PUTENV=1 -DHAVE_ SOCKET=1 -DHAVE_STRERROR=1 -DUNIX -DOPT_NO_STDERR -DCLOSE_FDS ./parseinfo.c gcc -c -o ./Test/pcgi-wrapper.o -I. -I. -I./Test -DSTDC_HEADERS=1 -DHAVE_SYS_WA IT_H=1 -DHAVE_UNISTD_H=1 -DRETSIGTYPE=void -DHAVE_PUTENV=1 -DHAVE_SOCKET=1 -DHAV E_STRERROR=1 -DUNIX -DOPT_NO_STDERR -DCLOSE_FDS ./pcgi-wrapper.c gcc -lnsl -o ./Test/parseinfo ./Test/parseinfo.o ./Test/pcgi-wrapper.o ------------------------------------------------------------------------------ Writing the pcgi resource file (ie cgi script), /usr/local/Zope2/Zope.cgi chmod 0711 /usr/local/Zope2/Zope.cgi ------------------------------------------------------------------------------ Compiling python modules ------------------------------------------------------------------------------ Building extension modules ------------------------------------------------ Compiling extensions in lib/python cp /usr/lib/python1.5/config/Makefile.pre.in . make -f Makefile.pre.in boot PYTHON=/usr/bin/python rm -f *.o *~ rm -f *.a tags TAGS config.c Makefile.pre python sedscript rm -f *.so *.sl so_locations VERSION=`/usr/bin/python -c "import sys; print sys.version[:3]"`; \ installdir=`/usr/bin/python -c "import sys; print sys.prefix"`; \ exec_installdir=`/usr/bin/python -c "import sys; print sys.exec_prefix"`; \ make -f ./Makefile.pre.in VPATH=. srcdir=. \ VERSION=$VERSION \ installdir=$installdir \ exec_installdir=$exec_installdir \ Makefile make[1]: Entering directory `/usr/local/Zope2/lib/python' sed -n \ -e '1s/.*/1i\\/p' \ -e '2s%.*%# Generated automatically from Makefile.pre.in by sedscript.%p' \ -e '/^VERSION=/s/^VERSION=[ ]*\(.*\)/s%@VERSION[@]%\1%/p' \ -e '/^CC=/s/^CC=[ ]*\(.*\)/s%@CC[@]%\1%/p' \ -e '/^CCC=/s/^CCC=[ ]*\(.*\)/s%#@SET_CCC[@]%CCC=\1%/p' \ -e '/^LINKCC=/s/^LINKCC=[ ]*\(.*\)/s%@LINKCC[@]%\1%/p' \ -e '/^OPT=/s/^OPT=[ ]*\(.*\)/s%@OPT[@]%\1%/p' \ -e '/^LDFLAGS=/s/^LDFLAGS=[ ]*\(.*\)/s%@LDFLAGS[@]%\1%/p' \ -e '/^LDLAST=/s/^LDLAST=[ ]*\(.*\)/s%@LDLAST[@]%\1%/p' \ -e '/^DEFS=/s/^DEFS=[ ]*\(.*\)/s%@DEFS[@]%\1%/p' \ -e '/^LIBS=/s/^LIBS=[ ]*\(.*\)/s%@LIBS[@]%\1%/p' \ -e '/^LIBM=/s/^LIBM=[ ]*\(.*\)/s%@LIBM[@]%\1%/p' \ -e '/^LIBC=/s/^LIBC=[ ]*\(.*\)/s%@LIBC[@]%\1%/p' \ -e '/^RANLIB=/s/^RANLIB=[ ]*\(.*\)/s%@RANLIB[@]%\1%/p' \ -e '/^MACHDEP=/s/^MACHDEP=[ ]*\(.*\)/s%@MACHDEP[@]%\1%/p' \ -e '/^SO=/s/^SO=[ ]*\(.*\)/s%@SO[@]%\1%/p' \ -e '/^LDSHARED=/s/^LDSHARED=[ ]*\(.*\)/s%@LDSHARED[@]%\1%/p' \ -e '/^CCSHARED=/s/^CCSHARED=[ ]*\(.*\)/s%@CCSHARED[@]%\1%/p' \ -e '/^SGI_ABI=/s/^SGI_ABI=[ ]*\(.*\)/s%@SGI_ABI[@]%\1%/p' \ -e '/^LINKFORSHARED=/s/^LINKFORSHARED=[ ]*\(.*\)/s%@LINKFORSHARED[@]%\1% /p' \ -e '/^prefix=/s/^prefix=\(.*\)/s%^prefix=.*%prefix=\1%/p' \ -e '/^exec_prefix=/s/^exec_prefix=\(.*\)/s%^exec_prefix=.*%exec_prefix=\1%/p' \ /usr/lib/python1.5/config/Makefile >sedscript echo "/^#@SET_CCC@/d" >>sedscript echo "/^installdir=/s%=.*%= /usr%" >>sedscript echo "/^exec_installdir=/s%=.*%=/usr%" >>sedscript echo "/^srcdir=/s%=.*%= .%" >>sedscript echo "/^VPATH=/s%=.*%= .%" >>sedscript echo "/^LINKPATH=/s%=.*%= %" >>sedscript echo "/^BASELIB=/s%=.*%= %" >>sedscript echo "/^BASESETUP=/s%=.*%= %" >>sedscript sed -f sedscript ./Makefile.pre.in >Makefile.pre /usr/lib/python1.5/config/makesetup \ -m Makefile.pre -c /usr/lib/python1.5/config/config.c.in Setup -n /usr /lib/python1.5/config/Setup.thread /usr/lib/python1.5/config/Setup.local /usr/li b/python1.5/config/Setup make -f Makefile do-it-again make[2]: Entering directory `/usr/local/Zope2/lib/python' /usr/lib/python1.5/config/makesetup \ -m Makefile.pre -c /usr/lib/python1.5/config/config.c.in Setup -n /usr /lib/python1.5/config/Setup.thread /usr/lib/python1.5/config/Setup.local /usr/li b/python1.5/config/Setup make[2]: Leaving directory `/usr/local/Zope2/lib/python' make[1]: Leaving directory `/usr/local/Zope2/lib/python' make In file included from ./../Components/ExtensionClass/ExtensionClass.c:61: ../Components/ExtensionClass/ExtensionClass.h:114: Python.h: No such file or dir ectory ../Components/ExtensionClass/ExtensionClass.h:115: import.h: No such file or dir ectory make: *** [ExtensionClass.o] Error 1 Traceback (innermost last): File "/usr/local/Zope2/w_pcgi.py", line 111, in ? if __name__=='__main__': main(sys.argv[0]) File "/usr/local/Zope2/w_pcgi.py", line 109, in main import wo_pcgi; wo_pcgi.main(me) File "/usr/local/Zope2/wo_pcgi.py", line 104, in main import build_extensions File "/usr/local/Zope2/inst/build_extensions.py", line 96, in ? make('lib','python') File "/usr/local/Zope2/inst/do.py", line 134, in make do('make') File "/usr/local/Zope2/inst/do.py", line 103, in do if i and picky: raise SystemError, i SystemError: 512 Thanks for your help! Adrian PS: I tried the RPMs for Zope 2.0.1 and it works. I have to start it manually because it doesn't work on init.d.