[Zope-it] problemi con ZPyGreSQLDA

Giorgio Andreoletti - mentelocale giorgio.andreoletti@mentelocale.it
Tue, 23 Oct 2001 11:49:23 +0200


buongiorno a tutta la lista !
vi scrivo perchè la crisi di nervi si sta impadronendo delle mie facoltà,
lasciandomi ben poche speranze di successo .... ormai, alla luce di quasi 2
settimane di tentativi, è diventata una cosa personale, tra me e questo
simpaticissimo modulo: ZPyGreSQLDA

allora, installo la slack8.0, facendo una installazione davvero minima e
installando poi tutti i demoni che utlizzo direttamente dai sorgenti,
lasciando perlopiù le configurazioni di default e ottimizzando i binari per
il mio processore. Il sistema è decisamente stabile, è su da ormai un mese
senza aver mai dato il minimo problema, nonostante la 'coraggiosa' scelta di
buttarmi sui kernel 2.4 e sul reiserfs.

installo python 2.1.1 dai sorgenti, e fin qui tutto bene.
installo postgresql 7.1.3, sempre dai sorgenti, senza dimenticarmi di
configurarlo con '--with-python'
installo zope 2.4.1, sempre dai sorgenti.

fin qui tutto funziona alla grande, ho provato ad installare alcuni prodotti
come SQLSession, LocalFs, TinyTable, Squishdot senza alcun problema.

I dolori vengono nell'installare questo benedetto ZPyGreSQLDA:
lo spacchetto, edito src/Setup.in in modo da includere la directory
/usr/local/pgsql/include

primo problema quando do il 'make':

gcc -fPIC -g -O2 -Wall -Wstrict-prototypes -I/usr/local/include/python2.1 -I
/usr/local/include/python2.1 -DHAVE_CONFIG_H  -I/usr/local/pgsql/include -c
././pgmodule.c -o ./pgmodule.o
././pgmodule.c: In function `pgconnect':
././pgmodule.c:694: warning: passing arg 4 of `PyArg_ParseTupleAndKeywords'
from incompatible pointer type
gcc -shared  ./pgmodule.o  -lpq -lcrypt  -o ./_pgmodule.so
/usr/i386-slackware-linux/bin/ld: cannot find -lpq
collect2: ld returned 1 exit status
make: *** [_pgmodule.so] Error 1


allora provo a levare lo switch '-lpq' da Setup.in, rimuovo Setup, faccio un
'make clean' che non guasta mai, e riprovo:

questa volta il modulo viene creato, ma ho cmq questo warning:

gcc -fPIC -g -O2 -Wall -Wstrict-prototypes -I/usr/local/include/python2.1 -I
/usr/local/include/python2.1 -DHAVE_CONFIG_H  -I/usr/local/pgsql/include -c
././pgmodule.c -o ./pgmodule.o
././pgmodule.c: In function `pgconnect':
././pgmodule.c:694: warning: passing arg 4 of `PyArg_ParseTupleAndKeywords'
from incompatible pointer type
gcc -shared  ./pgmodule.o  -lcrypt  -o ./_pgmodule.so

copio _pgmodule.so su di un livello, restarto zope, ed ecco qui cosa mi dice
se clicco sul prodotto ZPygreSQLDA:

Traceback (most recent call last):
  File "/home/zope/Zope-2.4.1-src/lib/python/OFS/Application.py", line 558,
in import_product
    product=__import__(pname, global_dict, global_dict, silly)
  File "/home/zope/zope/lib/python/Products/ZPyGreSQLDA/__init__.py", line
89, in ?
    import sys, os, Globals, DA
  File "/home/zope/zope/lib/python/Products/ZPyGreSQLDA/DA.py", line 91, in
?
    from db import DB
  File "/home/zope/zope/lib/python/Products/ZPyGreSQLDA/db.py", line 89, in
?
    import _pg, regex, sys, types
ImportError: /home/zope/zope/lib/python/Products/ZPyGreSQLDA/_pgmodule.so:
undefined symbol: lo_export

come ne esco ?
dove sto sbagliando ?

grazie mille per l'aiuto
Giorgio.

============================
Giorgio Andreoletti - mentelocale S.r.l.
responsabile hardware e networking
responsabile sviluppo web
www.mentelocale.it
giorgio.andreoletti@mentelocale.it
============================