[The static build of binutils is what gets the lto involved.] On 2018-Apr-7, at 5:29 PM, Mark Millard <marklmi26-fbsd at yahoo.com> wrote:
> On 2018-Apr-7, at 3:35 PM, Alexander Kabaev <kabaev at gmail.com> wrote: > >> On Sat, 7 Apr 2018 15:23:50 -0700 >> Mark Millard via freebsd-arm <freebsd-arm at freebsd.org> wrote: >> >>> My attempted, xtoolchain-gcc based, amd64->aarch64 >>> cross-buildworld-buildkernel failed with: >>> >>> --- libc.so.7.full --- >>> /usr/local/bin/aarch64-unknown-freebsd12.0-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 >>> >>> (I've not attempted such a build in a long time, so I do not >>> know how new this is. Historically I've done lots of such >>> builds. cortex-a53 was specifically targeted here.) >>> . . . >> >> IIRC, I had to disable LTO plugin in binutils and this need to >> disable it was there for a while. > > Hmm . . . > > # pkg info aarch64-binutils > aarch64-binutils-2.30_2,1 > Name : aarch64-binutils > Version : 2.30_2,1 > Installed on : Tue Feb 6 17:37:31 2018 PST > Origin : devel/aarch64-binutils > Architecture : FreeBSD:12:amd64 > Prefix : /usr/local > Categories : devel > Licenses : GPLv3, LGPL3 > Maintainer : bapt at FreeBSD.org > WWW : http://sources.redhat.com/binutils/ > Comment : GNU binutils for AArch64 cross-development > Options : > RELRO : off > STATIC : on > . . . (no more options listed) . . . > > # poudriere options -jFBSDFSSDjail -s devel/aarch64-binutils > [00:00:00] Appending to make.conf: /usr/local/etc/poudriere.d/make.conf > ===> The following configuration options are available for > aarch64-binutils-2.30_2,1: > RELRO=off: enable -z relro in ELF linker by default > STATIC=on: Build static executables and/or libraries > ===> Use 'make config' to modify these settings > . . . > > > Controlling LTO's presence via my port build does > not seem to be the way to disable LTO. > > This would suggest that I need to override part > of what buildworld does in order to force avoiding > lto. Such would be the first time that I've run > into that. > > Looks like I've some research to do for how. > > Thanks for letting me know. I had forgotten but I'd analyzed this once before: https://lists.freebsd.org/pipermail/freebsd-ports/2017-August/109769.html and it traced back to: STATIC=on: Build static executables and/or libraries for aarch64-binutils. (Static was at the time required for a poudriere/qemu mix that used aarch64-binutils.) (I do-not/did-not see such problems for powerpc64 targeted cross builds using xtoolchain material, such as powerpc64-binutils and powerpc64-gcc. This is specific to aarch64 for some reason.) So I'll see about turning STATIC off to enable buildworld. === Mark Millard marklmi26-fbsd at yahoo.com ( dsl-only.net went away in early 2018-Mar) _______________________________________________ freebsd-toolchain@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-toolchain To unsubscribe, send any mail to "freebsd-toolchain-unsubscr...@freebsd.org"