Ben Ocean wrote:
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:
I've always used the Makefile.pre.in $ZOPE_HOME/lib/python directory. So, from the ZPatterns product directory, 'cp ../../Makefile.pre.in .'.
[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?
No, but the Setup file in the ZPatterns directory has become out-of-sync with the rest of the Zope distribution, apparently. All you need to do is edit the "Setup" file and append "/src" to the end of the second line, which specifies where ExtensionClass.h will be found. Another option would be to consider installing TransactionAgents, available at http://www.cat-box.net/steve/TransactionAgents-0.0.1.tar.gz. Info is available at http://lists.zope.org/pipermail/zodb-dev/2001-July/001182.html. This package modifies ZPatterns somewhat, and in the process it fixed the Setup file and it fixes a bug that will prevent LoginManager from working. Beware, though, this is early version software. It's working quite well for me so far, but YMMV. This is definitely all much harder than it needs to be. I'm in the process of writing a HOWTO to get LoginManager working with a recent version of Zope... it's possible, but it's not fun. Does anyone know if LoginManager is still being maintained? It sure would be helpful to have it at least repackaged with the components necessary for it to work with Python2.1+ an Zope2.4+. If nobody's maintaining it, I'll look into repackaging it myself, if the licenses allow. -r
TIA, BenO
_______________________________________________ Zope maillist - Zope@zope.org http://lists.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope-dev )