[krbdev.mit.edu #9114] Build fails with LTO
"Greg Hudson via RT" <[email protected]> Tue, 05 Mar 2024 15:31:17 -0500
| Newsgroups | gmane.comp.encryption.kerberos.bugs |
|---|---|
| Message-ID | <rt-4.4.3-2-140753-1709670677-584.9114-4-0@kerborg-prod-app-1.mit.edu> |
Tue Mar 05 15:31:17 2024: Request 9114 was acted upon. Transaction: Ticket created by [email protected] Queue: krb5 Subject: Build fails with LTO Owner: Nobody Requestors: [email protected] Status: new Ticket <URL: http://kerborg-prod-app-1.mit.edu/rt/Ticket/Display.html?id=9114 > I did this: CFLAGS="-flto=4 -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing" CXXFLAGS="-flto=4 -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing" LDFLAGS="-flto=4 -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing" I got this compile error: ``` + x86_64-pc-linux-gnu-gcc -shared -fPIC -Wl,-h,libkrb5.so.3 -Wl,--no-undefined -o libkrb5.so.3.3 krb5_libinit.so error_tables/asn1_err.so error_tables/kdb5_err.so error_tables/krb5_err.so error_tables/k5e1_err.so error_tables/kv5m_err.so error_tables/krb524_err.so asn.1/asn1_encode.so asn.1/asn1_k_encode.so asn.1/ldap_key_seq.so ccache/ccapi_util.so ccache/ccbase.so ccache/cccopy.so ccache/cccursor.so ccache/ccdefault.so ccache/ccdefops.so ccache/ccmarshal.so ccache/ccselect.so ccache/ccselect_hostname.so ccache/ccselect_k5identity.so ccache/ccselect_realm.so ccache/cc_api_macos.so ccache/cc_dir.so ccache/cc_retr.so ccache/cc_file.so ccache/cc_kcm.so ccache/cc_memory.so ccache/cc_keyring.so ccache/ccfns.so keytab/ktadd.so keytab/ktbase.so keytab/ktdefault.so keytab/ktfr_entry.so keytab/ktremove.so keytab/ktfns.so keytab/kt_file.so keytab/kt_memory.so keytab/read_servi.so krb/addr_comp.so krb/addr_order.so krb/addr_srch.so krb/allow_weak.so krb/appdefault.so krb/ai_authdata.so krb/auth_con.so krb/cammac_util.so krb/authdata.so krb/authdata_exp.so krb/authdata_enc.so krb/authdata_dec.so krb/bld_pr_ext.so krb/bld_princ.so krb/chk_trans.so krb/chpw.so krb/conv_creds.so krb/conv_princ.so krb/copy_addrs.so krb/copy_auth.so krb/copy_athctr.so krb/copy_cksum.so krb/copy_creds.so krb/copy_data.so krb/copy_key.so krb/copy_princ.so krb/copy_tick.so krb/cp_key_cnt.so krb/decode_kdc.so krb/decrypt_tk.so krb/deltat.so krb/enc_helper.so krb/enc_keyhelper.so krb/encode_kdc.so krb/encrypt_tk.so krb/etype_list.so krb/fast.so krb/fwd_tgt.so krb/gc_via_tkt.so krb/gen_seqnum.so krb/gen_subkey.so krb/gen_save_subkey.so krb/get_creds.so krb/get_etype_info.so krb/get_in_tkt.so krb/gic_keytab.so krb/gic_opt.so krb/gic_pwd.so krb/in_tkt_sky.so krb/init_ctx.so krb/copy_ctx.so krb/init_keyblock.so krb/kdc_rep_dc.so krb/kerrs.so krb/kfree.so krb/libdef_parse.so krb/mk_cred.so krb/mk_error.so krb/mk_priv.so krb/mk_rep.so krb/mk_req.so krb/mk_req_ext.so krb/mk_safe.so krb/pac.so krb/pac_sign.so krb/padata.so krb/parse.so krb/parse_host_string.so krb/plugin.so krb/pr_to_salt.so krb/preauth2.so krb/preauth_ec.so krb/preauth_encts.so krb/preauth_otp.so krb/preauth_pkinit.so krb/preauth_sam2.so krb/princ_comp.so krb/privsafe.so krb/random_str.so krb/rd_cred.so krb/rd_error.so krb/rd_priv.so krb/rd_rep.so krb/rd_req.so krb/rd_req_dec.so krb/rd_safe.so krb/recvauth.so krb/response_items.so krb/s4u_creds.so krb/sendauth.so krb/send_tgs.so krb/ser_actx.so krb/ser_adata.so krb/ser_addr.so krb/ser_auth.so krb/ser_cksum.so krb/ser_ctx.so krb/ser_key.so krb/ser_princ.so krb/serialize.so krb/set_realm.so krb/sname_match.so krb/srv_dec_tkt.so krb/srv_rcache.so krb/str_conv.so krb/tgtname.so krb/unparse.so krb/val_renew.so krb/valid_times.so krb/vfy_increds.so krb/vic_opt.so krb/walk_rtree.so rcache/memrcache.so rcache/rc_base.so rcache/rc_dfl.so rcache/rc_file2.so rcache/rc_none.so unicode/ucdata.so unicode/ucstr.so os/accessor.so os/c_ustime.so os/ccdefname.so os/changepw.so os/dnsglue.so os/dnssrv.so os/expand_path.so os/full_ipadr.so os/gen_port.so os/genaddrs.so os/gen_rname.so os/hostaddr.so os/hostrealm.so os/hostrealm_dns.so os/hostrealm_domain.so os/hostrealm_profile.so os/hostrealm_registry.so os/init_os_ctx.so os/krbfileio.so os/ktdefname.so os/mk_faddr.so os/localaddr.so os/localauth.so os/localauth_an2ln.so os/localauth_k5login.so os/localauth_names.so os/localauth_rule.so os/locate_kdc.so os/lock_file.so os/net_read.so os/net_write.so os/port2ip.so os/prompter.so os/read_msg.so os/read_pwd.so os/realm_dom.so os/sendto_kdc.so os/sn2princ.so os/thread_safe.so os/timeofday.so os/toffset.so os/trace.so os/unlck_file.so os/ustime.so os/write_msg.so ../../util/profile/prof_tree.so ../../util/profile/prof_file.so ../../util/profile/prof_parse.so ../../util/profile/prof_get.so ../../util/profile/prof_set.so ../../util/profile/prof_err.so ../../util/profile/prof_init.so -L../../lib -lk5crypto -lcom_err -lkrb5support -lkeyutils -lresolv -Wl,-O1 -Wl,--as-needed -flto=4 -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing -Wl,--defsym=__gentoo_check_ldflags__=0 -Wl,--version-script binutils.versions /var/tmp/portage/app-crypt/mit-krb5-1.21.2/work/krb5-1.21.2/src/lib/krb5/krb/ser_ctx.c:33:17: error: type of ‘profile_ser_internalize’ does not match original declaration [-Werror=lto-type-mismatch] 33 | krb5_error_code profile_ser_internalize(krb5_context, profile_t *, | ^ /var/tmp/portage/app-crypt/mit-krb5-1.21.2/work/krb5-1.21.2/src/util/profile/prof_init.c:600:11: note: return value type mismatch 600 | errcode_t profile_ser_internalize(const char *unused, profile_t *profilep, | ^ /var/tmp/portage/app-crypt/mit-krb5-1.21.2/work/krb5-1.21.2/src/util/profile/prof_init.c:600:11: note: type ‘errcode_t’ should match type ‘krb5_error_code’ /var/tmp/portage/app-crypt/mit-krb5-1.21.2/work/krb5-1.21.2/src/util/profile/prof_init.c:600:11: note: ‘profile_ser_internalize’ was previously declared here /var/tmp/portage/app-crypt/mit-krb5-1.21.2/work/krb5-1.21.2/src/util/profile/prof_init.c:600:11: note: code may be misoptimized unless ‘-fno-strict-aliasing’ is used /var/tmp/portage/app-crypt/mit-krb5-1.21.2/work/krb5-1.21.2/src/lib/krb5/krb/ser_ctx.c:31:17: error: type of ‘profile_ser_externalize’ does not match original declaration [-Werror=lto-type-mismatch] 31 | krb5_error_code profile_ser_externalize(krb5_context, profile_t, | ^ /var/tmp/portage/app-crypt/mit-krb5-1.21.2/work/krb5-1.21.2/src/util/profile/prof_init.c:546:11: note: return value type mismatch 546 | errcode_t profile_ser_externalize(const char *unused, profile_t profile, | ^ /var/tmp/portage/app-crypt/mit-krb5-1.21.2/work/krb5-1.21.2/src/util/profile/prof_init.c:546:11: note: type ‘errcode_t’ should match type ‘krb5_error_code’ /var/tmp/portage/app-crypt/mit-krb5-1.21.2/work/krb5-1.21.2/src/util/profile/prof_init.c:546:11: note: ‘profile_ser_externalize’ was previously declared here /var/tmp/portage/app-crypt/mit-krb5-1.21.2/work/krb5-1.21.2/src/util/profile/prof_init.c:546:11: note: code may be misoptimized unless ‘-fno-strict-aliasing’ is used /var/tmp/portage/app-crypt/mit-krb5-1.21.2/work/krb5-1.21.2/src/lib/krb5/krb/ser_ctx.c:30:17: error: type of ‘profile_ser_size’ does not match original declaration [-Werror=lto-type-mismatch] 30 | krb5_error_code profile_ser_size(krb5_context, profile_t, size_t *); | ^ /var/tmp/portage/app-crypt/mit-krb5-1.21.2/work/krb5-1.21.2/src/util/profile/prof_init.c:524:11: note: return value type mismatch 524 | errcode_t profile_ser_size(const char *unused, profile_t profile, | ^ /var/tmp/portage/app-crypt/mit-krb5-1.21.2/work/krb5-1.21.2/src/util/profile/prof_init.c:524:11: note: type ‘errcode_t’ should match type ‘krb5_error_code’ /var/tmp/portage/app-crypt/mit-krb5-1.21.2/work/krb5-1.21.2/src/util/profile/prof_init.c:524:11: note: ‘profile_ser_size’ was previously declared here /var/tmp/portage/app-crypt/mit-krb5-1.21.2/work/krb5-1.21.2/src/util/profile/prof_init.c:524:11: note: code may be misoptimized unless ‘-fno-strict-aliasing’ is used lto1: some warnings being treated as errors lto-wrapper: fatal error: x86_64-pc-linux-gnu-gcc returned 1 exit status compilation terminated. /usr/lib/gcc/x86_64-pc-linux-gnu/13/../../../../x86_64-pc-linux-gnu/bin/ld: error: lto-wrapper failed collect2: error: ld returned 1 exit status make[2]: *** [Makefile:711: libkrb5.so.3.3] Error 1 ``` A full build log is attached. -- Eli Schwartz _______________________________________________ krb5-bugs mailing list [email protected] https://mailman.mit.edu/mailman/listinfo/krb5-bugs