Compile problems on Solaris 2.6

Ken Raeburn raeburn at MIT.EDU
Thu Oct 26 20:05:39 EDT 2006

On Oct 26, 2006, at 17:18, tomaddox at wrote:
> Hi, everyone,
> I'm trying to compile MIT's Kerberos V (krb5-1.5.1) on SPARC Solaris
> 2.6, and it keeps blowing up.  At the moment, I'm using the GNU tools
> to do the build, since Sun's compiler won't take the arguments that
> configure wants to give it.

Note that MIT isn't testing with a Solaris version nearly that old.   
I think Solaris 9 is the oldest we're testing on, or even have  

> My configure command line is:
> # configure --prefix=/zircon/opt --enable-dns-for-realm --without-krb4
> --with-tcl=/zircon/opt/usr/local/lib
> I'm using gcc version 3.4.6 (Sunfreeware package) and GNU ld 2.11.2.
> If I run it with Sun's compiler, the configure fails with the  
> following
> errors in config.log:
> ucbcc: Warning: Option
> -YP,:/usr/ucblib:/zircon/opt/SUNWspro/WS6U2/bin/../lib:/z
> ircon/opt/SUNWspro/WS6U2/bin:/usr/ccs/lib:/usr/lib passed to ld, if ld
> is invoke
> d, ignored otherwise
> ucbcc: Warning: Option --version passed to ld, if ld is invoked,
> ignored otherwi
> se
> ld: warning: option -YP appears more than once, first setting taken
> /usr/ccs/bin/ld: illegal option -- -
> /usr/ccs/bin/ld: illegal option -- v
> usage: ld [-6:abc:d:e:f:h:il:mo:p:rstu:z:B:CD:F:GI:L:M:N:P:Q:R:S:VY:?]
> file(s)

You don't indicate what test it's running.  At a quick glance, the  
only place I find --version used is when it's trying to figure out  
some version info about the compiler, but not getting it shouldn't be  

> Using gcc, the configure runs fine, but then make craps out like so:

> fake-addrinfo.c: At top level:
> fake-addrinfo.c:1331: error: variable `krb5int_in6addr_any' has
> initializer but incomplete type
> fake-addrinfo.c:1331: error: `IN6ADDR_ANY_INIT' undeclared here  
> (not in
> a function)
> fake-addrinfo.c: At top level:
> fake-addrinfo.c:1331: error: storage size of `krb5int_in6addr_any'
> isn't known

> Has anyone seen problems like this, or does anyone know what might be
> causing it?

It looks like Solaris 2.6 doesn't support IPv6.  Everything we test  
on does, so it's not surprising we missed something here and there.

Try conditionalizing the definition of krb5int_in6addr_any with  
"#ifdef KRB5_USE_INET6".  (That macro should not be defined in  
include/autoconf.h on your system.)  There may be other related  
problems waiting for you, though.


More information about the Kerberos mailing list