Build error on current git

Alexander Bokovoy ab at samba.org
Tue Apr 24 09:54:10 MDT 2012


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.

-- 
/ Alexander Bokovoy


More information about the samba-technical mailing list