Building Kerberos on AIX

Mohit Aggrawal mohit500 at
Mon May 6 05:44:24 EDT 2013

Thanks Greg for you help. I am able to build the kerberos  1.9.5 for HPUX
but for AIX after
casting sockaddr_storage structures to sockaddr using ss2sa i am getting
the following linker error

+ /bin/ld -o krb5_libinit.o error_tables/asn1_err.o
error_tables/kdb5_err.o error_tables/krb5_err.o error_tables/k5e1_err.o
error_tables/kv5m_err.o error_tables/krb524_err.o asn.1/asn1_decode.o
asn.1/asn1_k_decode.o asn.1/asn1_encode.o asn.1/asn1_get.o
asn.1/asn1_make.o asn.1/asn1buf.o asn.1/krb5_decode.o asn.1/krb5_encode.o
asn.1/asn1_k_encode.o asn.1/ldap_key_seq.o asn.1/asn1_misc.o
ccache/ccbase.o ccache/cccopy.o ccache/cccursor.o ccache/ccdefault.o
ccache/ccdefops.o ccache/cc_retr.o ccache/cc_file.o ccache/cc_memory.o
ccache/cc_keyring.o ccache/ccfns.o ccache/ser_cc.o keytab/ktadd.o
keytab/ktbase.o keytab/ktdefault.o keytab/ktfr_entry.o keytab/ktremove.o
keytab/ktfns.o keytab/kt_file.o keytab/kt_memory.o keytab/kt_srvtab.o
keytab/read_servi.o krb/addr_comp.o krb/addr_order.o krb/addr_srch.o
krb/allow_weak.o krb/appdefault.o krb/auth_con.o krb/authdata.o
krb/authdata_exp.o krb/authdata_enc.o krb/authdata_dec.o krb/bld_pr_ext.o
krb/bld_princ.o krb/chk_trans.o krb/chpw.o krb/conv_creds.o
krb/conv_princ.o krb/copy_addrs.o krb/copy_auth.o krb/copy_athctr.o
krb/copy_cksum.o krb/copy_creds.o krb/copy_data.o krb/copy_key.o
krb/copy_princ.o krb/copy_tick.o krb/cp_key_cnt.o krb/decode_kdc.o
krb/decrypt_tk.o krb/deltat.o krb/enc_helper.o krb/enc_keyhelper.o
krb/encode_kdc.o krb/encrypt_tk.o krb/etype_list.o krb/fast.o krb/fwd_tgt.o
krb/gc_via_tkt.o krb/gen_seqnum.o krb/gen_subkey.o krb/gen_save_subkey.o
krb/get_creds.o krb/get_in_tkt.o krb/gic_keytab.o krb/gic_opt.o
krb/gic_pwd.o krb/in_tkt_sky.o krb/init_ctx.o krb/copy_ctx.o
krb/init_keyblock.o krb/kdc_rep_dc.o krb/kerrs.o krb/kfree.o
krb/libdef_parse.o krb/mk_cred.o krb/mk_error.o krb/mk_priv.o krb/mk_rep.o
krb/mk_req.o krb/mk_req_ext.o krb/mk_safe.o krb/pac.o krb/pac_sign.o
krb/parse.o krb/plugin.o krb/pr_to_salt.o krb/preauth2.o
krb/gic_opt_set_pa.o krb/princ_comp.o krb/rd_cred.o krb/rd_error.o
krb/rd_priv.o krb/rd_rep.o krb/rd_req.o krb/rd_req_dec.o krb/rd_safe.o
krb/recvauth.o krb/s4u_authdata.o krb/s4u_creds.o krb/sendauth.o
krb/send_tgs.o krb/ser_actx.o krb/ser_adata.o krb/ser_addr.o krb/ser_auth.o
krb/ser_cksum.o krb/ser_ctx.o krb/ser_key.o krb/ser_princ.o krb/serialize.o
krb/set_realm.o krb/srv_dec_tkt.o krb/srv_rcache.o krb/str_conv.o
krb/tgtname.o krb/unparse.o krb/val_renew.o krb/valid_times.o
krb/vfy_increds.o krb/vic_opt.o krb/walk_rtree.o rcache/rc_base.o
rcache/rc_dfl.o rcache/rc_io.o rcache/rcdef.o rcache/rc_none.o
rcache/rc_conv.o rcache/ser_rc.o rcache/rcfns.o unicode/ucdata.o
unicode/ure.o unicode/urestubs.o unicode/ucstr.o os/accessor.o
os/an_to_ln.o os/c_ustime.o os/def_realm.o os/ccdefname.o os/changepw.o
os/dnsglue.o os/dnssrv.o os/free_krbhs.o os/full_ipadr.o os/get_krbhst.o
os/gen_port.o os/genaddrs.o os/gen_rname.o os/hostaddr.o os/hst_realm.o
os/init_os_ctx.o os/krbfileio.o os/ktdefname.o os/kuserok.o os/mk_faddr.o
os/localaddr.o os/locate_kdc.o os/lock_file.o os/net_read.o os/net_write.o
os/osconfig.o os/port2ip.o os/prompter.o os/read_msg.o os/read_pwd.o
os/realm_dom.o os/realm_iter.o os/sendto_kdc.o os/sn2princ.o
os/thread_safe.o os/timeofday.o os/toffset.o os/trace.o os/unlck_file.o
os/ustime.o os/write_msg.o ../../util/profile/prof_tree.o
../../util/profile/prof_file.o ../../util/profile/prof_parse.o
../../util/profile/prof_get.o ../../util/profile/prof_set.o
../../util/profile/prof_err.o ../../util/profile/prof_init.o -H512 -T512
-bnoentry -bgcbypass:1 -bnodelcsect -bfilelist -bM:SRE
-bE:./libkrb5.exports -bernotok -brtl -L../../lib -lk5crypto -lcom_err
-lkrb5support -lpthreads -lc -binitfini::profile_library_finalizer:2
*ld: 0706-026 The -b filelist option is ignored.
ld: 0711-317 ERROR: Undefined symbol: .krb5int_setpw_result_codestring
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more
make: 1254-004 The error code from the last command is 8.*

make: 1254-004 The error code from the last command is 1.

make: 1254-004 The error code from the last command is 1.


Please let me know if I need to do any changes in the makefile for AIX.


On Fri, May 3, 2013 at 10:43 PM, Greg Hudson <ghudson at> wrote:

> AIX and HPUX are not supported platforms for us, so you may have
> multiple problems trying to build there.  I will try to address the
> initial problems.
> On AIX, you appear to be running into a lack of IPv6 support.  Although
> 1.9 was intended to build on platforms without IPv6 support, a few more
> recently-added bits of IPv6 code appear to mistakenly access the
> ss_family field of struct sockaddr_storage directly.  You could try the
> changes here:
> Be aware that as of release 1.11, we require IPv6 support.  It sounds
> like some versions of AIX have IPv6 support, but perhaps the version
> you're building on does not.
> On HPUX, you are running into some broken declarations which only cause
> a problem when OM_uint32 is "unsigned long" instead of "unsigned int".
> I've pushed a fix to the master branch which you could try applying to
> your sources:

More information about the krbdev mailing list