Re: head -r320192 vs. devel/aarch64-xtoolchain-gcc and devel/aarch64-binutils (/usr/ports -r443557): "liblto_plugin.so: error loading plugin: Service unavailable" for .pico link

2017-06-21 Thread Mark Millard
[I add a note showing aarch64-freebsd-ld is statically
linked.]

On 2017-Jun-21, at 6:39 PM, Mark Millard  wrote:

> For the first time ever I attempted to do an amd64 -> aarch64
> cross build that was xtoolchain based for buildworld buildkernel .
> It failed as shown below. This was while linking with .pico
> files.
> 
> [Note: I used ". . ." in place of most of the huge .pico file list.]
> 
> --- libc.so.7.full ---
> building shared library libc.so.7
> --- libc_pic.a ---
> building special pic c library
> --- libc.so.7.full ---
> /usr/local/bin/aarch64-freebsd-ld: 
> /usr/local/libexec/gcc/aarch64-unknown-freebsd12.0/6.3.0/liblto_plugin.so: 
> error loading plugin: Service unavailable
> collect2: error: ld returned 1 exit status
> *** [libc.so.7.full] Error code 1

FYI: /usr/local/bin/aarch64-freebsd-ld is statically linked.

# file /usr/local/bin/aarch64-freebsd-ld*
/usr/local/bin/aarch64-freebsd-ld: ELF 64-bit LSB executable, x86-64, 
version 1 (FreeBSD), statically linked, for FreeBSD 12.0 (1200033), 
FreeBSD-style, not stripped
/usr/local/bin/aarch64-freebsd-ld.bfd: ELF 64-bit LSB executable, x86-64, 
version 1 (FreeBSD), statically linked, for FreeBSD 12.0 (1200033), 
FreeBSD-style, not stripped


> make[4]: stopped in /usr/src/lib/libc
> .ERROR_TARGET='libc.so.7.full'
> .ERROR_META_FILE='/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/lib/libc/libc.so.7.full.meta'
> .MAKE.LEVEL='4'
> MAKEFILE=''
> .MAKE.MODE='meta missing-filemon=yes missing-meta=yes silent=yes verbose'
> _ERROR_CMD='@echo building shared library libc.so.7; @rm -f libc.so.7 
> libc.so; /usr/local/bin/aarch64-unknown-freebsd12.0-gcc -mcpu=cortex-a53 
> -isystem 
> /usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/tmp/usr/include 
> -L/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/tmp/usr/lib 
> -B/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/tmp/usr/lib 
> --sysroot=/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/tmp 
> -B/usr/local/aarch64-freebsd/bin/  -nodefaultlibs 
> -Wl,--version-script=Version.map  -shared -Wl,-x -Wl,--fatal-warnings 
> -Wl,--warn-shared-textrel  -o libc.so.7.full -Wl,-soname,libc.so.7  
> `NM='/usr/local/aarch64-freebsd/bin/nm' NMFLAGS='' lorder machdep_ldisQ.pico
> . . .
> wmemset.pico |  tsort -q`  -lcompiler_rt  -lssp_nonshared;'
> .CURDIR='/usr/src/lib/libc'
> .MAKE='make'
> .OBJDIR='/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/lib/libc'
> .TARGETS='all'
> DESTDIR='/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/tmp'
> LD_LIBRARY_PATH=''
> MACHINE='arm64'
> MACHINE_ARCH='aarch64'
> MAKEOBJDIRPREFIX='/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64'
> MAKESYSPATH='/usr/src/share/mk'
> MAKE_VERSION='20170510'
> PATH='/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/tmp/legacy/usr/sbin:/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/tmp/legacy/usr/bin:/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/tmp/legacy/bin:/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/tmp/usr/sbin:/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/tmp/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin'
> SRCTOP='/usr/src'
> OBJTOP='/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src'
> .MAKE.MAKEFILES='/usr/src/share/mk/sys.mk /usr/src/share/mk/local.sys.env.mk 
> /usr/src/share/mk/src.sys.env.mk 
> /root/src.configs/src.conf.cortexA53-xtoolchain-gcc.amd64-host 
> /usr/src/share/mk/bsd.mkopt.mk /usr/src/share/mk/bsd.suffixes.mk 
> /root/src.configs/make.conf /usr/src/share/mk/local.sys.mk 
> /usr/src/share/mk/src.sys.mk /dev/null /usr/src/lib/libc/Makefile 
> /usr/src/share/mk/src.opts.mk /usr/src/share/mk/bsd.own.mk 
> /usr/src/share/mk/bsd.opts.mk /usr/src/share/mk/bsd.cpu.mk 
> /usr/src/share/mk/bsd.compiler.mk /usr/src/share/mk/bsd.compiler.mk 
> /usr/src/lib/libc/aarch64/Makefile.inc /usr/src/lib/libc/db/Makefile.inc 
> /usr/src/lib/libc/db/btree/Makefile.inc /usr/src/lib/libc/db/db/Makefile.inc 
> /usr/src/lib/libc/db/hash/Makefile.inc /usr/src/lib/libc/db/man/Makefile.inc 
> /usr/src/lib/libc/db/mpool/Makefile.inc 
> /usr/src/lib/libc/db/recno/Makefile.inc 
> /usr/src/lib/libc/compat-43/Makefile.inc /usr/src/lib/libc/gdtoa/Makefile.inc 
> /usr/src/lib/libc/gen/Makefile.inc /usr/src/lib/libc/aarch64/g
 en
> /Makefile.inc /usr/src/lib/libc/gmon/Makefile.inc 
> /usr/src/lib/libc/iconv/Makefile.inc 
> /usr/src/lib/libc_nonshared/Makefile.iconv 
> /usr/src/lib/libc/inet/Makefile.inc /usr/src/lib/libc/isc/Makefile.inc 
> /usr/src/lib/libc/locale/Makefile.inc /usr/src/lib/libc/md/Makefile.inc 
> /usr/src/lib/libc/nameser/Makefile.inc /usr/src/lib/libc/net/Makefile.inc 
> /usr/src/lib/libc/nls/Makefile.inc /usr/src/lib/libc/posix1e/Makefile.inc 
> /usr/src/lib/libc/regex/Makefile.inc /usr/src/lib/libc/resolv/Makefile.inc 
> /usr/src/lib/libc/stdio/Makefile.inc /usr/src/lib/libc/stdlib/Makefile.inc 
> /usr/src/lib/libc/stdlib/jemalloc/Makefile.inc 
> /usr/src/lib/libc/stdtime/Makefile.inc /usr/src/lib/libc/string/Makefile.inc 
> 

head -r320192 vs. devel/aarch64-xtoolchain-gcc and devel/aarch64-binutils (/usr/ports -r443557): "liblto_plugin.so: error loading plugin: Service unavailable" for .pico link

2017-06-21 Thread Mark Millard
For the first time ever I attempted to do an amd64 -> aarch64
cross build that was xtoolchain based for buildworld buildkernel .
It failed as shown below. This was while linking with .pico
files.

[Note: I used ". . ." in place of most of the huge .pico file list.]

--- libc.so.7.full ---
building shared library libc.so.7
--- libc_pic.a ---
building special pic c library
--- libc.so.7.full ---
/usr/local/bin/aarch64-freebsd-ld: 
/usr/local/libexec/gcc/aarch64-unknown-freebsd12.0/6.3.0/liblto_plugin.so: 
error loading plugin: Service unavailable
collect2: error: ld returned 1 exit status
*** [libc.so.7.full] Error code 1

make[4]: stopped in /usr/src/lib/libc
.ERROR_TARGET='libc.so.7.full'
.ERROR_META_FILE='/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/lib/libc/libc.so.7.full.meta'
.MAKE.LEVEL='4'
MAKEFILE=''
.MAKE.MODE='meta missing-filemon=yes missing-meta=yes silent=yes verbose'
_ERROR_CMD='@echo building shared library libc.so.7; @rm -f libc.so.7 libc.so; 
/usr/local/bin/aarch64-unknown-freebsd12.0-gcc -mcpu=cortex-a53 -isystem 
/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/tmp/usr/include 
-L/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/tmp/usr/lib 
-B/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/tmp/usr/lib 
--sysroot=/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/tmp 
-B/usr/local/aarch64-freebsd/bin/  -nodefaultlibs 
-Wl,--version-script=Version.map  -shared -Wl,-x -Wl,--fatal-warnings 
-Wl,--warn-shared-textrel  -o libc.so.7.full -Wl,-soname,libc.so.7  
`NM='/usr/local/aarch64-freebsd/bin/nm' NMFLAGS='' lorder machdep_ldisQ.pico
. . .
 wmemset.pico |  tsort -q`  -lcompiler_rt  -lssp_nonshared;'
.CURDIR='/usr/src/lib/libc'
.MAKE='make'
.OBJDIR='/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/lib/libc'
.TARGETS='all'
DESTDIR='/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/tmp'
LD_LIBRARY_PATH=''
MACHINE='arm64'
MACHINE_ARCH='aarch64'
MAKEOBJDIRPREFIX='/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64'
MAKESYSPATH='/usr/src/share/mk'
MAKE_VERSION='20170510'
PATH='/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/tmp/legacy/usr/sbin:/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/tmp/legacy/usr/bin:/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/tmp/legacy/bin:/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/tmp/usr/sbin:/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src/tmp/usr/bin:/sbin:/bin:/usr/sbin:/usr/bin'
SRCTOP='/usr/src'
OBJTOP='/usr/obj/cortexA53_xtoolchain-gcc/arm64.aarch64/usr/src'
.MAKE.MAKEFILES='/usr/src/share/mk/sys.mk /usr/src/share/mk/local.sys.env.mk 
/usr/src/share/mk/src.sys.env.mk 
/root/src.configs/src.conf.cortexA53-xtoolchain-gcc.amd64-host 
/usr/src/share/mk/bsd.mkopt.mk /usr/src/share/mk/bsd.suffixes.mk 
/root/src.configs/make.conf /usr/src/share/mk/local.sys.mk 
/usr/src/share/mk/src.sys.mk /dev/null /usr/src/lib/libc/Makefile 
/usr/src/share/mk/src.opts.mk /usr/src/share/mk/bsd.own.mk 
/usr/src/share/mk/bsd.opts.mk /usr/src/share/mk/bsd.cpu.mk 
/usr/src/share/mk/bsd.compiler.mk /usr/src/share/mk/bsd.compiler.mk 
/usr/src/lib/libc/aarch64/Makefile.inc /usr/src/lib/libc/db/Makefile.inc 
/usr/src/lib/libc/db/btree/Makefile.inc /usr/src/lib/libc/db/db/Makefile.inc 
/usr/src/lib/libc/db/hash/Makefile.inc /usr/src/lib/libc/db/man/Makefile.inc 
/usr/src/lib/libc/db/mpool/Makefile.inc /usr/src/lib/libc/db/recno/Makefile.inc 
/usr/src/lib/libc/compat-43/Makefile.inc /usr/src/lib/libc/gdtoa/Makefile.inc 
/usr/src/lib/libc/gen/Makefile.inc /usr/src/lib/libc/aarch64/gen
 /Makefile.inc /usr/src/lib/libc/gmon/Makefile.inc 
/usr/src/lib/libc/iconv/Makefile.inc /usr/src/lib/libc_nonshared/Makefile.iconv 
/usr/src/lib/libc/inet/Makefile.inc /usr/src/lib/libc/isc/Makefile.inc 
/usr/src/lib/libc/locale/Makefile.inc /usr/src/lib/libc/md/Makefile.inc 
/usr/src/lib/libc/nameser/Makefile.inc /usr/src/lib/libc/net/Makefile.inc 
/usr/src/lib/libc/nls/Makefile.inc /usr/src/lib/libc/posix1e/Makefile.inc 
/usr/src/lib/libc/regex/Makefile.inc /usr/src/lib/libc/resolv/Makefile.inc 
/usr/src/lib/libc/stdio/Makefile.inc /usr/src/lib/libc/stdlib/Makefile.inc 
/usr/src/lib/libc/stdlib/jemalloc/Makefile.inc 
/usr/src/lib/libc/stdtime/Makefile.inc /usr/src/lib/libc/string/Makefile.inc 
/usr/src/lib/libc/aarch64/string/Makefile.inc 
/usr/src/lib/libc/sys/Makefile.inc /usr/src/sys/sys/syscall.mk 
/usr/src/lib/libc/aarch64/sys/Makefile.inc 
/usr/src/lib/libc/secure/Makefile.inc /usr/src/lib/libc/rpc/Makefile.inc 
/usr/src/lib/libc/uuid/Makefile.inc /usr/src/lib/libc/xdr/Makefile.inc /usr/s
 rc/lib/libc/yp/Makefile.inc /usr/src/lib/libc/capability/Makefile.inc 
/usr/src/share/mk/bsd.lib.mk /usr/src/share/mk/bsd.init.mk 
/usr/src/share/mk/local.init.mk /usr/src/share/mk/src.init.mk 
/usr/src/lib/libc/../Makefile.inc /usr/src/share/mk/bsd.libnames.mk 
/usr/src/share/mk/src.libnames.mk /usr/src/share/mk/bsd.symver.mk 
/usr/src/share/mk/bsd.nls.mk /usr/src/share/mk/bsd.files.mk 
/usr/src/share/mk/bsd.incs.mk 

Re: arm64 on head -r320059 (e.g.) fails buildkernel with only kernel-toolchain first (not buildworld) [Bugzilla 220125]

2017-06-21 Thread Dimitry Andric
On 21 Jun 2017, at 02:15, Ryan Stone  wrote:
> 
> On Mon, Jun 19, 2017 at 2:57 AM, Dimitry Andric  wrote:
> 
>> Solution B is problematic because arm_neon.h uses stdint.h types
>> extensively.
>> 
> 
> If I manually modify the arm_neon.h file to instead say this, the problem
> is avoided and the kernel builds:
> 
> #ifdef _KERNEL
> #include 
> #else
> #include 
> #endif
> 
> Do you think that the llvm devs would be willing to take a change to
> NeonEmitter that does this on FreeBSD?
> 
> This may not be a complete solution, though, as googling seems to indicate
> that gcc also provides a arm_neon.h and it also #includes 

Indeed.  It seems this header is not really designed to be included from
kernel space.  It is probably easiest to provide a kernel wrapper for
stdint.h, maybe even just for arm.

-Dimitry



signature.asc
Description: Message signed with OpenPGP