[Kroupware] Re: Apache build error

Martin Honermeyer kroupware@mail.kde.org
Tue, 19 Nov 2002 01:34:03 +0100


Hi,

>Andreas Ahlenstorf wrote:

>Hello,

>Another question from myself, meanwhile I'm feeling very stupid.
>I built in the last hours the kolab packages. Everything was
>going fine until I came to the apache webserver:

>$ rpm -bb apache2.spec --define 'with_fsl yes' --define 'with_ldap yes'

>reports:

><!--cut-->
>In file included from apr_ldap_compat.c:63:
>/kolab/RPM/TMP/httpd-2.0.43/srclib/apr-util/include/apr_ldap.h:97: parse 
>error before '*' token
>make[4]: *** [apr_ldap_compat.lo] Error 1
>make[3]: *** [all-recursive] Error 1
>make[2]: *** [all-recursive] Error 1
>make[1]: *** [all-recursive] Error 1
>make: *** [all-recursive] Error 1
>error: Bad exit status from /kolab/RPM/TMP/rpm-tmp.83020 (%build)
><!--cut-->

>I already recompiled OpenLDAP to check for a compiler error, but I
>found nothing (okay, that would not mean anything). What's the
>way to fix this problem? I already asked Google [1], but without an
>helpful result.

>Thanks,
>     - Andreas

>[1] http://groups.google.com/groups?hl=en&q=apr_ldap_compat


I had the same problem, too. I found the following solution:

1. Copy the following files from /kolab/RPM/TMP/openldap-../include to 
/kolab/RPM/TMP/httpd-../srclib/apr-util/include:

ldap.h
lber.h
lber_types.h
ldap_cdefs.h
ldap_features.h


2. Apply the following patch
("diff /kolab/RPM/TMP/httpd-../srclib/apr-util/include/apr_ldap.h 
/kolab/RPM/TMP/httpd-../srclib/apr-util/include/apr_ldap.h.in"):

95,97c97
< //BEGIN FIX
< #include "ldap.h"
< /*int ldap_search_ext_s(LDAP *ldap, char *base, int scope, char *filter,
---
> int ldap_search_ext_s(LDAP *ldap, char *base, int scope, char *filter,
99c99
<                     void *timeout, int sizelimit, LDAPMessage **res); */
---
>                     void *timeout, int sizelimit, LDAPMessage **res);
101d100
< //END FIX


You have to do all these things WHILE the script is running, as soon as 
"configure" is finished and the real compile action begins. You could also 
manipulate the httpd tar.gz in the /kolab/RPM/SRC/apache2 directory, before 
compiling.

That should work! Don't understand why those things are missing..

Martin