Date: Wed, 18 Jan 2017 14:13:06 -0800 From: Mark Millard <markmi@dsl-only.net> To: freebsd-arm <freebsd-arm@freebsd.org> Subject: Using poudriere (with -a arm.armv6 -x ) on amd64 vs. building lang/gcc6: Some notes from my first attempts Message-ID: <CCDD03FB-572A-4B0B-9ECD-3F5C1C8D8000@dsl-only.net>
next in thread | raw e-mail | index | archive | help
I took a stab at building lang/gcc6 on an amd64 context (FreeBSD in a = VirtualBox machine) but targeting arm.armv6 using poudriere with -a arm.armv6 -x in use. = This was done on a 2.8 GHz macOS MacBookPro11,3 with 16 GiBytes of RAM and a fast USB 3.0 = SSD having the virtual machine files. The virtual machine had 4 cores (but see later = notes about ALLOW_MAKE_JOBS and -J 1). The MacBookPro was not busy doing much of = anything else over the time of the attempts. The following notes are only for after the prerequisites were already = built: just lang/gcc6 itself is covered. (So -J 1 would be effective even if = I'd not specified it.) Because of gmake related crashes when I tried ALLOW_MAKE_JOBS=3Dyes, ALLOW_MAKE_JOBS was not used for what I'm = reporting. I gave the VirtualBox machine 4 GiBytes of RAM and had 2 GIBytes of swap in place. As for the lang/gcc6 build options: > ---Begin OPTIONS List--- > =3D=3D=3D> The following configuration options are available for = gcc6-6.3.0: > BOOTSTRAP=3Don: Build using a full bootstrap > GRAPHITE=3Doff: Support for Graphite loop optimizations > =3D=3D=3D> Use 'make config' to modify these settings > ---End OPTIONS List--- So when xgcc and the like were in use it was based on an emulated compiler, not native. (clang built the original xgcc.) > The following languages will be built: c,c++,fortran,lto,objc > *** This configuration is not supported in the following = subdirectories: > zlib target-zlib target-libjava target-libcilkrts = target-libsanitizer target-libvtv target-libmpx target-libffi gnattools = gotools target-libada target-libgo target-liboffloadmic target-boehm-gc > (Any other directories should still work fine.) After somewhat more than 72 hours the result was: > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D<ph= ase: package >=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > =3D=3D=3D> Building package for gcc6-6.3.0 > Child process pid=3D20571 terminated abnormally: Killed > *** Error code 1 >=20 > Stop. > make: stopped in /usr/ports/lang/gcc6 from running out of swap space. So it looks like ALLOW_MAKE_JOBS=3Dyes for 4 cores might be something like 20 hours (very rough figure) on that MacBook Pro and more RAM or swap would be needed to build just lang/gcc6 (after its prerequisites are in place). I will note that my armv6 context used -mcpu=3Dcortex-a7 for buildworld for the jail and for building ports. =3D=3D=3D Mark Millard markmi at dsl-only.net
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CCDD03FB-572A-4B0B-9ECD-3F5C1C8D8000>