Olaf.Tuinder
2003-Sep-30 15:39 UTC
[Samba] Samba 3.0.0 compile problems (with gssapi headers)
Hello, I have a compile problem concerning samba-3.0.0 (final) with gssapi on a Solaris 9 machine. I don't know how to fix this, so any suggestions are welcome. Situation: We use LDAP to authenticate logins of a group of users, so I want to use this LDAP directory also from samba. (Openldap-2.1.22 was compiled with BerkeleyDB.4.1, heimdal-0.6 kerberos, and cyrus-sasl-2.1.13). After a configure of samba-3.0.0 (final) with minimal options (see configure info below), but inclusion of the libraries that we need later for OpenLDAP support I get the following type of errors: ... In file included from include/includes.h:425, from dynconfig.c:21: /usr/local/heimdal/include/gssapi.h:50: warning: redefinition of `OM_uint32' /usr/include/gssapi/gssapi.h:87: warning: `OM_uint32' previously declared here /usr/local/heimdal/include/gssapi.h:52: warning: redefinition of `gss_uint32' /usr/include/gssapi/gssapi.h:64: warning: `gss_uint32' previously declared here /usr/local/heimdal/include/gssapi.h:64: conflicting types for `gss_name_t' /usr/include/gssapi/gssapi.h:57: previous declaration of `gss_name_t' ... [cut] many many more lines of the same type [cut] ... make: *** [dynconfig.o] Error 1 There are other gssapi libraries in the box from the SUNWhea SunOS Header Files package that I cannot de-install without breaking lots of things. So I provided the lib and include dirs at the configure command (see below). Why does the compilation go wrong, and what can I do to fix the problem? Suggestions are welcome. Regards, Olaf. Samba configure and make commands used: ========================================We use gcc version 3.2.3. # cd samba-3.0.0/source # export PATH=$PATH:/usr/local/bin:/usr/ccs/bin # export CPPFLAGS="-I/usr/local/openldap/include \ -I/usr/local/ssl/include \ -I/usr/local/heimdal/include" # export LDFLAGS="-L/usr/local/openldap/lib \ -R/usr/local/openldap/lib \ -L/usr/local/ssl/lib \ -R/usr/local/ssl/lib \ -L/usr/local/heimdal/lib \ -R/usr/local/heimdal/lib" # ./configure --prefix=/usr/local/samba-3.0.0 \ --with-smbwrapper \ --with-included-popt Apart from some non-fatal configure warnings, it creates the Makefile. # make Using FLAGS = -g -O2 -I./popt -Iinclude -I/usr/local/src/samba-3.0.0/source/include -I/usr/local/src/samba-3.0.0/source/ubiqx -I/usr/local/src/samba-3.0.0/source/smbwrapper -I. -I/usr/local/openldap/include -I/usr/local/ssl/include -I/usr/local/heimdal/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/local/src/samba-3.0.0/source LIBS = -lsendfile -lsec -lgen -lresolv -lsocket -lnsl -ldl LDSHFLAGS = -G -L/usr/local/openldap/lib -R/usr/local/openldap/lib -L/usr/local/ssl/lib -R/usr/local/ssl/lib -L/usr/local/heimdal/lib -R/usr/local/heimdal/lib LDFLAGS = -L/usr/local/openldap/lib -R/usr/local/openldap/lib -L/usr/local/ssl/lib -R/usr/local/ssl/lib -L/usr/local/heimdal/lib -R/usr/local/heimdal/lib Generating smbd/build_options.c Building include/proto.h creating /usr/local/src/samba-3.0.0/source/include/proto.h Building include/wrepld_proto.h creating /usr/local/src/samba-3.0.0/source/include/wrepld_proto.h Building include/build_env.h creating /usr/local/src/samba-3.0.0/source/nsswitch/winbindd_proto.h creating /usr/local/src/samba-3.0.0/source/web/swat_proto.h creating /usr/local/src/samba-3.0.0/source/client/client_proto.h creating /usr/local/src/samba-3.0.0/source/utils/net_proto.h Compiling dynconfig.c In file included from include/includes.h:425, from dynconfig.c:21: /usr/local/heimdal/include/gssapi.h:50: warning: redefinition of `OM_uint32' /usr/include/gssapi/gssapi.h:87: warning: `OM_uint32' previously declared here /usr/local/heimdal/include/gssapi.h:52: warning: redefinition of `gss_uint32' /usr/include/gssapi/gssapi.h:64: warning: `gss_uint32' previously declared here /usr/local/heimdal/include/gssapi.h:64: conflicting types for `gss_name_t' /usr/include/gssapi/gssapi.h:57: previous declaration of `gss_name_t' /usr/local/heimdal/include/gssapi.h:76: conflicting types for `gss_ctx_id_t' /usr/include/gssapi/gssapi.h:55: previous declaration of `gss_ctx_id_t' /usr/local/heimdal/include/gssapi.h:78: redefinition of `struct gss_OID_desc_struct' ... [cut] ... In file included from include/includes.h:425, from dynconfig.c:21: /usr/local/heimdal/include/gssapi.h:340:1: warning: "GSS_C_CALLING_ERROR_MASK" redefined In file included from /usr/include/rpc/rpcsec_gss.h:25, from /usr/include/rpc/rpc.h:40, from include/includes.h:375, from dynconfig.c:21: /usr/include/gssapi/gssapi.h:302:1: warning: this is the location of the previous definition In file included from include/includes.h:425, from dynconfig.c:21: ... [cut] ... /usr/local/heimdal/include/gssapi.h:746: conflicting types for `gss_verify' /usr/include/gssapi/gssapi.h:685: previous declaration of `gss_verify' /usr/local/heimdal/include/gssapi.h:756: conflicting types for `gss_seal' /usr/include/gssapi/gssapi.h:695: previous declaration of `gss_seal' /usr/local/heimdal/include/gssapi.h:765: conflicting types for `gss_unseal' /usr/include/gssapi/gssapi.h:704: previous declaration of `gss_unseal' make: *** [dynconfig.o] Error 1 ============================================ -- Olaf_News @ no-spam let.uu.nl