[Zope] Installing ZPatterns: The Plot Thickens...

Ben Ocean zope@thewebsons.com
Mon, 12 Nov 2001 09:31:27 -0800


At 08:41 AM 11/12/01 -0800, you wrote:
>At 03:42 PM 11/12/01 +0000, you wrote:
>>Hi,
>>         this one stung me too for a while but the Makefile.pre.in the
>>instructions are refering to is the one which a full python install has
>>in the /usr/lib/python/config/ directory which is used for building
>>python modules and making sure they build correctly against python.
>>
>>So for a typical python2.1 installation you copy the
>>/usr/lib/python2.1/config/Makefile.pre.in into the directory and
>>continue following the instructions. I feel the instructions could be a
>>little clearer (its not clear from the context that the Makefile comes
>>with python).
>
>Agreed. Once I've got this figured out I'll write the author. But check this:
>
>[root@hermes ZPatterns]# cp /usr/lib/python2.1/config/Makefile.pre.in .

Oops! Notice python2.1 here...

>[root@hermes ZPatterns]# make -f Makefile.pre.in boot
>rm -f *.o *~
>rm -f *.a tags TAGS config.c Makefile.pre python sedscript
>rm -f *.so *.sl so_locations
>VERSION=`python -c "import sys; print sys.version[:3]"`; \
>installdir=`python -c "import sys; print sys.prefix"`; \
>exec_installdir=`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 
>`/apache/ZopeInstallation/Zope_software_home/lib/python/Products/ZPatterns'
>make[1]: *** No rule to make target `/usr/lib/python1.5/config/Makefile', 
>needed by `sedscript'.  Stop.

Ah! Notice python1.5 here. So I edited Makefile.pre.in and forced it to 
read use python2.1. This seemed to work just fine for make -f 
Makefile.pre.in boot but failed on make:

[root@hermes ZPatterns]# make
gcc -fPIC -g -O2 -Wall -Wstrict-prototypes -I/usr/include/python2.1 
-I/usr/include/python2.1 -DHAVE_CONFIG_H  -I../../ZODB 
-I../../../Components/ExtensionClass -c ././DynPersist.c -o ./DynPersist.o
In file included from ././DynPersist.c:1:
../../ZODB/cPersistence.h:89: ExtensionClass.h: No such file or directory
make: *** [DynPersist.o] Error 1

I would have assumed the aforementioned file would be part of the standard 
distro. Is there something else I need to install?
TIA,
BenO