E' arrivato il grande giorno: sto installando qmail con la patch per ldap.
Ho preso tutte le precauzioni del caso:
mi sono studiato ldap e ho configurato un database di test funzionante.
Sto seguendo i solito how-to per qmail:
lifewithqmail
lifewithqmail-ldap
http://www.linuxwithin.com/email-howto.html
Ho iniziato la configuraizione di base di qmail:
ho creato gruppi e utenti e directory di sistema, come indicato nell'how-to lifewithqmail e lifewithqmail-ldap.
Mi sono procurato le patch necessarie e ho patchato con successo i sorgenti "vergini" di qmail (prelevati direttamente dal sito di djb) con le patch riguardanti errno.h e ldap:
http://www.qmail.org/moni.csi.hu/pub/glibc-2.3.1/qmail-1.03.errno.patch http://www.nrg4u.com/qmail/qmail-ldap-1.03-20030901a.patch.gz
Fin qui tutto ok. Poi ho messo mano al Makefile apportando solo due o tre modifiche come consigliato da
http://www.linuxwithin.com/email-howto.html
e aggiustando il path per le librerie di ldap.
Ed ora, durante il make setup chek di qmail, ottengo quanto allegato di seguito.
Qualcuno saprebbe aiutarmi o darmi qualche dritta?
Grazie in anticipo.
Giuseppe
./compile -DQLDAP_CLUSTER -I/usr/local/include -DDEBUG qldap.c
qldap.c:3:18: lber.h: No such file or directory
qldap.c:4:18: ldap.h: No such file or directory
qldap.c:32: parse error before "LDAP"
qldap.c:32: warning: no semicolon at end of struct or union
qldap.c:33: warning: data definition has no type or storage class
qldap.c:34: parse error before '*' token
qldap.c:34: warning: data definition has no type or storage class
qldap.c:36: parse error before '}' token
qldap.c: In function `qldap_new':
qldap.c:175: sizeof applied to an incomplete type
qldap.c:177: sizeof applied to an incomplete type
qldap.c: In function `qldap_open':
qldap.c:188: dereferencing pointer to incomplete type
qldap.c:188: dereferencing pointer to incomplete type
qldap.c:191: dereferencing pointer to incomplete type
qldap.c:191: `LDAP_PORT' undeclared (first use in this function)
qldap.c:191: (Each undeclared identifier is reported only once
qldap.c:191: for each function it appears in.)
qldap.c:200: dereferencing pointer to incomplete type
qldap.c: In function `qldap_bind':
qldap.c:209: dereferencing pointer to incomplete type
qldap.c:209: dereferencing pointer to incomplete type
qldap.c:220: dereferencing pointer to incomplete type
qldap.c:230: `LDAP_SUCCESS' undeclared (first use in this function)
qldap.c:232: dereferencing pointer to incomplete type
qldap.c:234: `LDAP_TIMELIMIT_EXCEEDED' undeclared (first use in this function)
qldap.c:235: `LDAP_SERVER_DOWN' undeclared (first use in this function)
qldap.c:237: dereferencing pointer to incomplete type
qldap.c:239: `LDAP_INVALID_CREDENTIALS' undeclared (first use in this function)
qldap.c:241: dereferencing pointer to incomplete type
qldap.c:243: `LDAP_PROTOCOL_ERROR' undeclared (first use in this function)
qldap.c:260: dereferencing pointer to incomplete type
qldap.c: In function `qldap_rebind':
qldap.c:269: dereferencing pointer to incomplete type
qldap.c:269: dereferencing pointer to incomplete type
qldap.c:271: dereferencing pointer to incomplete type
qldap.c: In function `qldap_close':
qldap.c:282: dereferencing pointer to incomplete type
qldap.c:282: dereferencing pointer to incomplete type
qldap.c:286: dereferencing pointer to incomplete type
qldap.c:287: dereferencing pointer to incomplete type
qldap.c: In function `qldap_free_results':
qldap.c:294: dereferencing pointer to incomplete type
qldap.c:294: dereferencing pointer to incomplete type
qldap.c:295: dereferencing pointer to incomplete type
qldap.c:296: dereferencing pointer to incomplete type
qldap.c:296: `LDAPMessage' undeclared (first use in this function)
qldap.c:296: parse error before ')' token
qldap.c:297: dereferencing pointer to incomplete type
qldap.c:297: parse error before ')' token
qldap.c: In function `qldap_free':
qldap.c:305: dereferencing pointer to incomplete type
qldap.c:308: sizeof applied to an incomplete type
qldap.c: In function `qldap_lookup':
qldap.c:322: dereferencing pointer to incomplete type
qldap.c:322: dereferencing pointer to incomplete type
qldap.c:327: dereferencing pointer to incomplete type
qldap.c:327: `LDAP_SCOPE_SUBTREE' undeclared (first use in this function)
qldap.c:328: dereferencing pointer to incomplete type
qldap.c:342: `LDAP_SUCCESS' undeclared (first use in this function)
qldap.c:346: `LDAP_TIMEOUT' undeclared (first use in this function)
qldap.c:347: `LDAP_TIMELIMIT_EXCEEDED' undeclared (first use in this function)
qldap.c:348: `LDAP_BUSY' undeclared (first use in this function)
qldap.c:352: `LDAP_NO_SUCH_OBJECT' undeclared (first use in this function)
qldap.c:363: dereferencing pointer to incomplete type
qldap.c:363: dereferencing pointer to incomplete type
qldap.c:375: dereferencing pointer to incomplete type
qldap.c:375: dereferencing pointer to incomplete type
qldap.c:375: dereferencing pointer to incomplete type
qldap.c:381: dereferencing pointer to incomplete type
qldap.c: In function `qldap_filter':
qldap.c:395: dereferencing pointer to incomplete type
qldap.c:395: dereferencing pointer to incomplete type
qldap.c:399: `LDAP_SCOPE_BASE' undeclared (first use in this function)
qldap.c:402: `LDAP_SCOPE_ONELEVEL' undeclared (first use in this function)
qldap.c:405: `LDAP_SCOPE_SUBTREE' undeclared (first use in this function)
qldap.c:414: dereferencing pointer to incomplete type
qldap.c:415: dereferencing pointer to incomplete type
qldap.c:429: `LDAP_SUCCESS' undeclared (first use in this function)
qldap.c:433: `LDAP_TIMEOUT' undeclared (first use in this function)
qldap.c:434: `LDAP_TIMELIMIT_EXCEEDED' undeclared (first use in this function)
qldap.c:435: `LDAP_BUSY' undeclared (first use in this function)
qldap.c:439: `LDAP_NO_SUCH_OBJECT' undeclared (first use in this function)
qldap.c:449: dereferencing pointer to incomplete type
qldap.c: In function `qldap_count':
qldap.c:456: dereferencing pointer to incomplete type
qldap.c:456: dereferencing pointer to incomplete type
qldap.c:457: dereferencing pointer to incomplete type
qldap.c:457: dereferencing pointer to incomplete type
qldap.c: In function `qldap_first':
qldap.c:463: dereferencing pointer to incomplete type
qldap.c:463: dereferencing pointer to incomplete type
qldap.c:466: dereferencing pointer to incomplete type
qldap.c:466: dereferencing pointer to incomplete type
qldap.c:466: dereferencing pointer to incomplete type
qldap.c:467: dereferencing pointer to incomplete type
qldap.c:467: `LDAPMessage' undeclared (first use in this function)
qldap.c:467: parse error before ')' token
qldap.c: At top level:
qldap.c:473: parse error before '->' token
qldap.c: In function `qldap_next':
qldap.c:480: dereferencing pointer to incomplete type
qldap.c:480: dereferencing pointer to incomplete type
qldap.c:482: dereferencing pointer to incomplete type
qldap.c:484: dereferencing pointer to incomplete type
qldap.c:484: dereferencing pointer to incomplete type
qldap.c:484: dereferencing pointer to incomplete type
qldap.c:485: dereferencing pointer to incomplete type
qldap.c:485: `LDAPMessage' undeclared (first use in this function)
qldap.c:485: parse error before ')' token
qldap.c:487: dereferencing pointer to incomplete type
qldap.c: In function `qldap_get_dn':
qldap.c:698: dereferencing pointer to incomplete type
qldap.c:698: dereferencing pointer to incomplete type
qldap.c:700: dereferencing pointer to incomplete type
qldap.c:700: dereferencing pointer to incomplete type
qldap.c:700: warning: assignment makes pointer from integer without a cast
qldap.c: In function `qldap_get_attr':
qldap.c:755: dereferencing pointer to incomplete type
qldap.c:755: dereferencing pointer to incomplete type
qldap.c:757: dereferencing pointer to incomplete type
qldap.c:757: dereferencing pointer to incomplete type
qldap.c:757: warning: assignment makes pointer from integer without a cast
qldap.c: In function `check_next_state':
qldap.c:945: dereferencing pointer to incomplete type
qldap.c:945: dereferencing pointer to incomplete type
qldap.c:945: dereferencing pointer to incomplete type
qldap.c:951: dereferencing pointer to incomplete type
qldap.c:957: dereferencing pointer to incomplete type
qldap.c:957: dereferencing pointer to incomplete type
qldap.c:958: dereferencing pointer to incomplete type
qldap.c:964: dereferencing pointer to incomplete type
qldap.c:964: dereferencing pointer to incomplete type
qldap.c:970: dereferencing pointer to incomplete type
qldap.c:970: dereferencing pointer to incomplete type
make: *** [qldap.o] Error 1

