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
[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
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]
On 21 Jun 2017, at 02:15, Ryan Stonewrote: > > 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