Web lists-archives.com

Building OpenSSH fails when '--with-kerberos5' in the default configuration




I downloaded the source for Cygwin's OpenSSH package and attempted to build it with the defaults:

cygport openssh.cygport prep
cygport openssh.cygport compile

This resulted in the following compile errors:

In file included from /usr/src/openssh-7.6p1-1.src/openssh-7.6p1-1.i686/src/openssh-7.6p1/openbsd-compat/openbsd-compat.h:180:0, from /usr/src/openssh-7.6p1-1.src/openssh-7.6p1-1.i686/src/openssh-7.6p1/includes.h:174, from /usr/src/openssh-7.6p1-1.src/openssh-7.6p1-1.i686/src/openssh-7.6p1/openbsd-compat/port-aix.c:27: /usr/src/openssh-7.6p1-1.src/openssh-7.6p1-1.i686/src/openssh-7.6p1/openbsd-compat/bsd-misc.h:124:39: error: expected identifier or ‘(’ before ‘do’
# define krb5_free_error_message(a,b) do { } while(0)
^
/usr/src/openssh-7.6p1-1.src/openssh-7.6p1-1.i686/src/openssh-7.6p1/openbsd-compat/bsd-misc.h:124:46: error: expected identifier or ‘(’ before ‘while’
# define krb5_free_error_message(a,b) do { } while(0)
^
In file included from /usr/include/krb5/krb5.h:8488:0,
from /usr/include/krb5.h:8,
from /usr/src/openssh-7.6p1-1.src/openssh-7.6p1-1.i686/src/openssh-7.6p1/auth.h:42, from /usr/src/openssh-7.6p1-1.src/openssh-7.6p1-1.i686/src/openssh-7.6p1/openbsd-compat/port-aix.c:33: /usr/include/et/com_err.h:38:20: error: conflicting types for ‘error_message’
extern char const *error_message (long);
^~~~~~~~~~~~~
In file included from /usr/src/openssh-7.6p1-1.src/openssh-7.6p1-1.i686/src/openssh-7.6p1/includes.h:171:0, from /usr/src/openssh-7.6p1-1.src/openssh-7.6p1-1.i686/src/openssh-7.6p1/openbsd-compat/port-aix.c:27: /usr/src/openssh-7.6p1-1.src/openssh-7.6p1-1.i686/src/openssh-7.6p1/defines.h:684:43: note: previous declaration of ‘error_message’ was here
# define krb5_get_err_text(context,code) error_message(code)
^
make[1]: *** [Makefile:26: port-aix.o] Error 1
make[1]: Leaving directory '/usr/src/openssh-7.6p1-1.src/openssh-7.6p1-1.i686/build/openbsd-compat'
make: *** [Makefile:156: openbsd-compat/libopenbsd-compat.a] Error 2
*** ERROR: make failed

Modifying openssh.cygport by removing "--with-kerberos5" allows compilation.

I have all of the applicable Kerberos packages:

$cygcheck -c | grep -i krb
libgssapi_krb5_2          1.15.2-1                OK
libkrb5-devel             1.15.2-1                OK
libkrb5_3                 1.15.2-1                OK
libkrb5support0           1.15.2-1                OK

Am I missing something?


Matt D.

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple