Date: Fri, 24 Feb 2017 18:28:31 +0100 From: Milan Obuch <freebsd-arm@dino.sk> To: freebsd-arm@freebsd.org Subject: Re: FreeBSD on Pine64 experience Message-ID: <20170224182831.76c15809@zeta.dino.sk> In-Reply-To: <20170220124619.7f04ad6a@zeta.dino.sk> References: <20170220124619.7f04ad6a@zeta.dino.sk>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 20 Feb 2017 12:46:19 +0100 Milan Obuch <freebsd-arm@dino.sk> wrote: > Hi, > > some time ago I've got Pine64 board with 1 GB RAM. I decided to put > FreeBSD on it as I saw arm64 architecture being worked on. First I > tried to build u-boot, it worked somehow, but I was not able to find > out the way boot works here, and did not find much time to play > afterwards. I completed full rebuild with sources at svn revision 313999 now. It took almost four days... but no problems so far, everything seems to be stable, just some spurious interrupts were detected over the build, maybe ten over those four days. [ snip ] > env ABI=FreeBSD:11:aarch64 pkg install aarch64-binutils > > which installed both pkg and aarch64-binutils packages. I know from my > earlier attempts to cross compile world for arm64 it was enough to > build world, but it was not enough for native build. Trouble was our > build environment is sanitized and aarch64-binutils package is > installed into /usr/local/aarch64-freebsd/{bin,lib} directories, so > they are not in path. I did not find other way to get it working > without too much fussing with makefiles et all, but simple crude hack > worked - I created links with > > ln -s /usr/local/aarch64-freebsd/bin/* /bin > Actually only ld needs this, so ln -s /usr/local/aarch64-freebsd/bin/ld /bin was enough. Also, with no deeper analysis, it seems it is necessary just for early stage of building toolchain (beginning of 'make buildworld'). And now, after svn upgrade to version 314213, it seems to be not necessary anymore... I just fired next buildworld... > Nothing more was necessary for native buildworld/buildkernel to > succeed. At this point after nfs mounting /usr/port I was able to > build ports. > > When trying installworld, it proceeded almost flawlessly, just at the > end following error was reported: > > ===> etc (install) > ===> etc/newsyslog.conf.d (install) > ===> etc/sendmail (install) > cd /usr/src/etc/../share/man; make makedb > makewhatis /usr/share/man > makewhatis /usr/share/openssl/man > <jemalloc>: /usr/src/lib/libc/../../contrib/jemalloc/include/jemalloc/internal/tsd.h:687: > Failed assertion: "tsd_booted" *** Signal 6 > This problem remains, at least it occured again this time. > Remaining steps, make delete-old, mergemaster and make delete-old-libs > all completed successfully, with mergemaster being painfully slow > due /var/tmp/temproot being od SD card. > > Now I am running newly built 12-CURRENT on Pine, I looks like it works > well. Just a small nit - my 'uname -a' now prints > > FreeBSD pine 12.0-CURRENT FreeBSD 12.0-CURRENT #0: Mon Feb 20 > 00:47:55 CET 2017 root@tiny.dino.sk:/usr/obj/usr/src/sys/GENERIC > arm64 > > Originally it was 12.0-CURRENT #<svn revision number> - does anybody > know where this revision number is being lost? Could it be somehow > caused by fact my src tree was 'svn checkout'ed on another machine > (i386)? > Well, I can not verify my theory - I am not able to do svn checkout into nfs mounted directory from arm64 and armv6 systems (nfsd runs on i386 system). Maybe it just could not work this way... Regards, Milan
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20170224182831.76c15809>