Build error on current git

Andrew Bartlett abartlet at samba.org
Tue Apr 24 15:42:11 MDT 2012


On Tue, 2012-04-24 at 23:14 +0200, Gémes Géza wrote:
> 2012-04-24 17:54 keltezéssel, Alexander Bokovoy írta:
> > On Tue, Apr 24, 2012 at 16:53, Alexander Bokovoy <ab at samba.org> wrote:
> >> On Tue, Apr 24, 2012 at 16:51, Gémes Géza <geza at kzsdabas.hu> wrote:
> >>> 2012-04-24 15:45 keltezéssel, Alexander Bokovoy írta:
> >>>> 2012/4/24 Gémes Géza <geza at kzsdabas.hu>:
> >>>>> Hi,
> >>>>>
> >>>>> Today I've pulled the git repo (tried with a fresh clone as well), and
> >>>>> ./configure.developer && make && make install fails with:
> >>>>>
> >>>>> [ 934/3974] Compiling source4/auth/kerberos/krb5_init_context.c
> >>>>> In file included from ../source4/auth/kerberos/krb5_init_context.c:24:
> >>>>> ../lib/replace/system/kerberos.h:43:27: error: gssapi/gssapi.h: No such
> >>>>> file or directory
> >>>>> ../lib/replace/system/kerberos.h:51:32: error: gssapi/gssapi_krb5.h: No
> >>>>> such file or directory
> >>>>> Waf: Leaving directory `/usr/local/src/samba/bin'
> >>>>> Build failed:  -> task failed (err #1):
> >>>>>    {task: cc krb5_init_context.c -> krb5_init_context_1.o}
> >>>>> make: *** [all] Error 1
> >>>>>
> >>>>>
> >>>>> I suppose it has to do with the recent Heimdal, MIT krb5 related changes.
> >>>> Did you specify --with-mit-krb5-checks when configuring?
> >>>>
> >>> No, I've run configure.developer with the default options. Make reports:
> >>> Selected embedded Heimdal build
> >>> I suspect the recent MIT changes, because yesterday evening it built
> >>> with the same defaults.
> >> waf build only disables going into heimdal_build (and therefore
> >> defining paths to gssapi/) when --with-mit-krb5-checks.
> >> Could you please come on IRC and we would run the troubleshooting interactively?
> > ok, this is because lib/replace/system/kerberos.h includes also
> > GSSAPI-related headers even if they are not needed for specific
> > subsystem. If the subsystem in question doesn't use GSSAPI, then it
> > doesn't have gssapi subsystem in its dependencies and appropriate
> > include directories are not picked up for it as well so the including
> > system/kerberos.h fails then. It worked on autobuild because the
> > machine running autobuild had gssapi installed system-wide in default
> > paths and #include <gssapi/gssapi.h> picked it up there. In Geza;s
> > case the system heimdal was installed in /usr/local/heimdal, thus
> > system-wide gssapi/gssapi.h was not picked up.
> >
> > I'm working on a patch, stay tuned.
> >
> Hi
> 
> After a half a day spent on IRC with Alexander (Thnak you!)
> Seems to be fixed by:
> http://abbra.fedorapeople.org/.paste/0001-lib-replace-split-out-GSSAPI-from-lib-replace-system.patch

I would prefer not to separate out GSSAPI and krb5.  We simply do not
support having one and not the other, and I recently removed the
configure support for attempting such a build.  

I agree, this is a real bug.  Internally, we should depend on gssapi and
krb5 in all places where we include system/kerberos.h, to ensure we get
the right paths to gssapi headers.

Thanks,

Andrew Bartlett

-- 
Andrew Bartlett                                http://samba.org/~abartlet/
Authentication Developer, Samba Team           http://samba.org



More information about the samba-technical mailing list