Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 04 Apr 2018 08:02:44 -0700
From:      Cy Schubert <Cy.Schubert@cschubert.com>
To:        Dimitry Andric <dim@FreeBSD.org>
Cc:        Cy Schubert <Cy.Schubert@cschubert.com>, freebsd-hackers@freebsd.org
Subject:   Re: mips.mips64elhf and mips.mips64el buildworld
Message-ID:  <201804041502.w34F2iEC061198@slippy.cwsent.com>
In-Reply-To: Message from Dimitry Andric <dim@FreeBSD.org> of "Wed, 04 Apr 2018 09:06:04 %2B0200." <06A6FF73-A15B-4EA1-854A-B2B741FB7E63@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
In message <06A6FF73-A15B-4EA1-854A-B2B741FB7E63@FreeBSD.org>, Dimitry 
Andric w
rites:
> 
>
> --Apple-Mail=_1871B193-52B6-457E-BF1E-554DCC870732
> Content-Transfer-Encoding: 7bit
> Content-Type: text/plain;
> 	charset=us-ascii
>
> On 4 Apr 2018, at 04:37, Cy Schubert <Cy.Schubert@cschubert.com> wrote:
> > 
> > Building world within the krb5 project branch after having made heimdal
> > private, as of LLVM 6 the following errors are produced
>
> Since mips is built with gcc (still), this hasn't got anything to do
> with clang. :)
>
>
> > /scratch/tmp/cy/obj/home/cy/projects/pvt/mips.mips64elhf/obj-lib32/tmp/u
> > sr/lib32
> > /libprivateasn1.so: could not read symbols: File in wrong format
> > 
> > and
> > 
> > /scratch/tmp/cy/obj/home/cy/projects/pvt/mips.mips64el/obj-lib32/tmp/usr
> > /lib32/l
> > ibprivateasn1.so: could not read symbols: File in wrong format
> > 
> > File reports,
> > 
> > universe12b$ file /scratch/tmp/cy/obj/home/cy/projects/pvt/mips.mips64el
> > hf/obj-lib32/tmp/usr/lib32/libprivateasn1.so.11
> > /scratch/tmp/cy/obj/home/cy/projects/pvt/mips.mips64elhf/obj-lib32/tmp/u
> > sr/lib32/libprivateasn1.so.11: ELF 32-bit MSB shared object, MIPS,
> > MIPS-III version 1 (FreeBSD), dynamically linked, not stripped
> > universe12b$
> > 
> > Similarly for mips64el.
> > 
> > All other architectures built successfully.
> > 
> > For the stupid question: AFAICT the files are correct. Does anyone have
> > any ideas?
>
> Which program is producing the "could not read symbols" output?  The
> linker?  Maybe it trips up over these 32-bit shared libraries.

Yes, it appears to be the linker.

>
> It would probably help a bit if you posted the buildworld output
> somewhere, so it is more easily visible how the libraries are built,
> and by which program(s) they are processed.

Do you have access to universe12b.freebsd.org? The output is in 
/home/cy/projects/pvt/_.mips.mips64elhf.buildworld and 
/home/cy/projects/pvt/_.mips.mips64el.buildworld.

The Makefile building the library in question is kerberos5/lib/libasn1/M
akefile. My alterations are:

universe12b$ svn diff -cr323334  kerberos5/lib/libasn1/Makefile         

Index: kerberos5/lib/libasn1/Makefile
===================================================================
--- kerberos5/lib/libasn1/Makefile	(revision 323333)
+++ kerberos5/lib/libasn1/Makefile	(revision 323334)
@@ -1,6 +1,7 @@
 # $FreeBSD$
 
 LIB=	asn1
+PRIVATELIB=	true
 LDFLAGS=	-Wl,--no-undefined
 INCS=	asn1_err.h asn1-common.h heim_asn1.h der.h der-protos.h 
der-private.h
 LIBADD=	com_err roken
@@ -21,7 +22,8 @@
 	timegm.c \
 	${GEN:S/.x$/.c/:S/.hx$/.h/}
 
-CFLAGS+=-I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/roken -I.
+CFLAGS+=-I${KRB5DIR}/lib/asn1 -I${KRB5DIR}/lib/roken \
+	-I${.OBJDIR:H}/libroken -I.
 
 GEN_RFC2459=	asn1_rfc2459_asn1.x rfc2459_asn1.hx rfc2459_asn1-priv.hx
 GEN_CMS= 	asn1_cms_asn1.x cms_asn1.hx cms_asn1-priv.hx
universe12b$ 


$_LD is defined as $CC.

--- libprivatekrb5.so.11.full ---
building shared library libprivatekrb5.so.11
cc -DCOMPAT_32BIT -march=mips3 -mabi=32 -L/scratch/tmp/cy/obj/home/cy/pr
ojects/pvt/mips.mips64elhf/obj-lib32/tmp/usr/lib32 
--sysroot=/scratch/tmp/cy/obj/home/cy/projects/pvt/mips.mips64elhf/obj-l
ib32/tmp -B/scratch/tmp/cy/obj/home/cy/projects/pvt/mips.mips64elhf/tmp/
usr/bin -B/scratch/tmp/cy/obj/home/cy/projects/pvt/mips.mips64elhf/obj-l
ib32/tmp/usr/lib32 -isystem /scratch/tmp/cy/obj/home/cy/projects/pvt/mip
s.mips64elhf/obj-lib32/tmp/usr/include -Wl,--no-undefined 
-Wl,--version-script=/home/cy/projects/pvt/crypto/heimdal/lib/krb5/versi
on-script.map  -shared -Wl,-x -Wl,--fatal-warnings 
-Wl,--warn-shared-textrel  -o libprivatekrb5.so.11.full 
-Wl,-soname,libprivatekrb5.so.11  `NM='nm' NMFLAGS='' lorder 
acache.pico acl.pico add_et_list.pico addr_families.pico 
aname_to_localname.pico appdefault.pico asn1_glue.pico 
auth_context.pico build_ap_req.pico build_auth.pico cache.pico 
changepw.pico codec.pico config_file.pico constants.pico context.pico 
convert_creds.pico copy_host_realm.pico crc.pico creds.pico 
crypto-aes.pico crypto-algs.pico crypto-arcfour.pico 
crypto-des-common.pico crypto-des.pico crypto-des3.pico crypto-evp.pico 
crypto-null.pico crypto-pk.pico crypto-rand.pico crypto.pico data.pico 
deprecated.pico digest.pico doxygen.pico eai_to_heim_errno.pico 
error_string.pico expand_hostname.pico expand_path.pico fcache.pico 
free.pico free_host_realm.pico generate_seq_number.pico 
generate_subkey.pico get_addrs.pico get_cred.pico get_default_principal.
pico get_default_realm.pico get_for_creds.pico get_host_realm.pico 
get_in_tkt.pico get_port.pico init_creds.pico init_creds_pw.pico 
kcm.pico keyblock.pico keytab.pico keytab_any.pico keytab_file.pico 
keytab_keyfile.pico keytab_memory.pico krbhst.pico kuserok.pico 
log.pico mcache.pico misc.pico mit_glue.pico mk_error.pico mk_priv.pico 
mk_rep.pico mk_req.pico mk_req_ext.pico mk_safe.pico n-fold.pico 
net_read.pico net_write.pico pac.pico padata.pico pcache.pico 
pkinit.pico plugin.pico principal.pico prog_setup.pico 
prompter_posix.pico rd_cred.pico rd_error.pico rd_priv.pico rd_rep.pico 
rd_req.pico rd_safe.pico read_message.pico recvauth.pico replay.pico 
salt-aes.pico salt-arcfour.pico salt-des.pico salt-des3.pico salt.pico 
scache.pico send_to_kdc.pico sendauth.pico set_default_realm.pico 
sock_principal.pico store-int.pico store.pico store_emem.pico 
store_fd.pico store_mem.pico ticket.pico time.pico transited.pico 
verify_init.pico verify_user.pico version.pico warn.pico 
write_message.pico heim_err.pico k524_err.pico krb5_err.pico 
krb_err.pico |  tsort -q` -lprivateasn1  -lcom_err  -lcrypt  -lcrypto 
-lprivatehx509 -lprivateroken -lprivatewind -lprivateheimbase 
-lprivateheimipcc
/scratch/tmp/cy/obj/home/cy/projects/pvt/mips.mips64elhf/obj-lib32/tmp/u
sr/lib32/libprivateasn1.so: could not read symbols: File in wrong format
*** [libprivatekrb5.so.11.full] Error code 1


-- 
Cheers,
Cy Schubert <Cy.Schubert@cschubert.com>
FreeBSD UNIX:  <cy@FreeBSD.org>   Web:  http://www.FreeBSD.org

	The need of the many outweighs the greed of the few.





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201804041502.w34F2iEC061198>