Ciao,
I am new with cURL; while building version 7.19.7 with
--with-gssapi and GNU GSS installed, I get this error:
libtool: compile: gcc -DHAVE_CONFIG_H -I../include -I../include -I../lib
-I../lib -I/usr/local/include -I/usr/local/include -I/usr/include/openssl
-I/usr/include -I/usr/local/include -O3 -march=i686 -mtune=i686 -g0
-Wno-system-headers -MT krb5.lo -MD -MP -MF .deps/krb5.Tpo -c krb5.c -fPIC
-DPIC -o .libs/krb5.o
In file included from /usr/local/include/gss.h:83,
from urldata.h:130,
from krb5.c:59:
/usr/local/include/gss/api.h:92: error: redefinition of 'struct
gss_OID_desc_struct'
/usr/local/include/gss/api.h:98: error: redefinition of 'struct
gss_OID_set_desc_struct'
/usr/local/include/gss/api.h:104: error: redefinition of 'struct
gss_buffer_desc_struct'
/usr/local/include/gss/api.h:110: error: redefinition of 'struct
gss_channel_bindings_struct'
the problem is that, while "lib/urldata.h" has this block:
#ifdef HAVE_GSSAPI
# ifdef HAVE_GSSGNU
# include <gss.h>
# elif defined HAVE_GSSMIT
# include <gssapi/gssapi.h>
# include <gssapi/gssapi_generic.h>
# else
# include <gssapi.h>
# endif
#endif
which correctly handles mutual exclusion of header files,
"lib/krb5.c" does:
#ifdef HAVE_GSSMIT
/* MIT style */
#include <gssapi/gssapi.h>
#include <gssapi/gssapi_generic.h>
#include <gssapi/gssapi_krb5.h>
#else
/* Heimdal-style */
#include <gssapi.h>
#endif
#include "urldata.h"
which does not. The code being as it is, it seems to me
that just removing the block:
#ifdef HAVE_GSSMIT
/* MIT style */
#include <gssapi/gssapi.h>
#include <gssapi/gssapi_generic.h>
#include <gssapi/gssapi_krb5.h>
#else
/* Heimdal-style */
#include <gssapi.h>
#endif
from "lib/krb5.c" and keeping:
#include "urldata.h"
in it would fix things.
Thanks.
--
Marco Maggi
-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette: http://curl.haxx.se/mail/etiquette.html