[OpenAFS-devel] GNU glibc >=2.26 and openafs

Peter Gille petergil+afs@pdc.kth.se
Tue, 12 Dec 2017 16:20:17 +0100


On 2017-12-12 01:30:42 +0000, Benjamin Kaduk <kaduk@mit.edu> wrote:

> On Mon, Dec 11, 2017 at 07:43:39PM +0100, Peter Gille wrote:
>>
>> On 2017-12-11 16:54:00 +0000, Benjamin Kaduk <kaduk@mit.edu> wrote:
>>
>> > On Mon, Dec 11, 2017 at 09:53:48AM +0100, Peter Gille wrote:
>> >>
>> >> On 2017-12-10 20:38:04 +0000, Benjamin Kaduk <kaduk@mit.edu> wrote:
>> >>
>> > Ah, are you configuring with external/system roken?  Current heimdal
>> > roken has renamed these symbols to have an rk_ prefix, but our
>> > in-tree snapshot is from before that change.  Debian is dealing with
>> > this via
>> > https://anonscm.debian.org/cgit/pkg-k5-afs/openafs.git/tree/debian/patches/0003-Catch-up-to-roken-s-rename-of-base64-symbols.patch?h=experimental
>> > .
>> > I guess we could make configure smart enough to figure out which one
>> > to use, now that I think about it.  (I had mostly been assuming that
>> > we would pull in a newer shapsnot of heimdal, but that work has not
>> > been prioritized.)
>>
>> Yes, apparently (right now I just do a straight ./configure with no
>> other options just to check if it compiles or not[1]). Possibly I should
>> adjust the flags to the configure script parameters somewhat?
>
> Huh, I thought straight ./configure would use the internal roken.
>
> Maybe you should send me (unicast) your config.log.

I will send you a config.log of the working build (see below)
separately.

>> After applying your patch I now get the further error:
>>
>> make[3]: Entering directory '/var/tmp/portage/net-fs/openafs-1.8.0_pre3-r1/work/openafs-1.8.0pre3/src/libafscp'
>> gcc     -O   -I/var/tmp/portage/net-fs/openafs-1.8.0_pre3-r1/work/openafs-1.8.0pre3/src/config -I/var/tmp/portage/net-fs/openafs-1.8.0_pre3-r1/work/openafs-1.8.0pre3/include -I. -I.     -pthread -D_REENTRANT -DAFS_PTHREAD_ENV  -o afscp_callback.o -c afscp_callback.c
>> gcc @KRB5_CPPFLAGS@    -O   -I/var/tmp/portage/net-fs/openafs-1.8.0_pre3-r1/work/openafs-1.8.0pre3/src/config -I/var/tmp/portage/net-fs/openafs-1.8.0_pre3-r1/work/openafs-1.8.0pre3/include -I. -I.     -pthread -D_REENTRANT -DAFS_PTHREAD_ENV  -o afscp_server.o -c afscp_server.c
>> gcc: error: @KRB5_CPPFLAGS@: No such file or directory
>>
>> This seems like some settings the configure script is trying to find,
>> but I'm not at all good at working with autotools. I tried this with
>> both Heimdal 7.4 and then I tried upgrading to the newly released 7.5
>> and got the same error.
>
> This one seems pretty bizzare, as AC_SUBST() is supposed to cause
> configure to expand that @KRB5_CPPFLAGS@ out to something useful.
>
> Might be worth trying anew in a clean (freshly extracted, plus
> patch) tree just in case something got confused somewhere.

Ah, ok. I tried it now by hand and things compiled without problems. I
did not try to run it yet, but it seems like it should work.

This issue was triggered by me being lazy and doing 'ebuild
openafs-1.8.0_pre3-r1.ebuild prepare' to automatically unpack and patch
the openafs sources. As it turns that also runs the following, which I
didn't expect:

        eaclocal -I src/cf
        eautoconf
        eautoconf -o configure-libafs configure-libafs.ac
        eautoheader

According to a colleague who has quite a lot of experience with openafs
and kerberos there are known issues with running the wrong version of
autoconf with the wrong version of heimdal, so he said that something
like this isn't entirely entirely unexpected.

> Thanks for trying it out,

No problem.

Cheers,
Peter