The Samba-Bugzilla – Bug 455
Getting compiler error on Samba-3.0-rc4 when using gcc.3.2.3
Last modified: 2005-11-14 09:27:04 UTC
Gcc is bailing out on
"libads/kerberos_verify.c", line 77: improper member use: keyblock
cc: acomp failed for libads/kerberos_verify.c
*** Error code 2
The code-line on line 77 is
entry.keyblock = *key;
Os: Solaris 9
Are you using MIT or Heimdal kerberos? The comment in the code indicates that
this error can only occur using MIT but in-memory keytabs should only be
supported under Heimdal.
Now I look at the version numbers it's obvious that you are using MIT. (-:
Created attachment 142 [details]
Patch for in-memory keytab configure test
I would be interested in seeing the fragment of config.log where the in-memory
keytab function is tested for. This patch reverses the sense of the test twice
which should leave it the same, unless there is a link or compile error.
Mine looks like this:
configure:27097: checking for memory keytab support
configure:27131: gcc -o conftest -gstabs -Wall -Wshadow -Wstrict-prototypes
-Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -DDEBUG_PASSWORD
-DDEVELOPER -I/usr/include -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
-D_GNU_SOURCE -I/usr/include conftest.c -lresolv -lnsl -ldl -L/usr/lib
-lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lresolv >&5
configure:27447: warning: return type defaults to `int'
configure:27447: warning: function declaration isn't a prototype
configure:27134: $? = 0
configure:27139: $? = 1
configure: program exited with status 1
configure: failed program was:
| #line 27110 "configure"
| /* confdefs.h. */
| /* end confdefs.h. */
| krb5_context context;
| krb5_keytab keytab;
| if (krb5_kt_resolve(context, "MEMORY:", &keytab))
configure:27153: result: no
configure:25244: checking for memory keytab support
configure:25272: gcc -o conftest -g -O2 -I/usr/local/include -I/usr/local/includ
e -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/local/include -L /usr/local/
lib conftest.c -lsec -lgen -lresolv -lsocket -lnsl -ldl -L/usr/local/lib -R/u
sr/local/lib -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err -lsocket -lnsl -lresolv >
configure:25275: $? = 0
configure:25280: $? = 0
Is that with or without the patch in attachment 142 [details]?
I re-run the configure and make and suddenly it worked.
I don't know why, it could be that my brain is still in weekend mode.
Well I'll mark it closed for now. Please re-open it if you see it happening again.
originally reported against one of the 3.0.0rc[1-4] releases.
Cleaning up non-production versions.