From: Etan Kissling <kissling@oberon.ch>
To: "crossgcc@sourceware.org" <crossgcc@sourceware.org>
Subject: Building rpi armv6 toolchain on macOS
Date: Thu, 09 Mar 2017 12:15:00 -0000 [thread overview]
Message-ID: <70FD9E5B-E9D1-43CF-84FF-B64AC54FA6C7@oberon.ch> (raw)
Hi,
I'm trying to build a toolchain that supports cross compilation for the Raspberry Pi Zero W.
This requires building for ARMv6 (same as for the old Raspberry Pi 1).
The official repository contains a crosstool-ng config file here:
https://github.com/raspberrypi/tools/blob/master/configs/arm-rpi-4.9.3-linux-gnueabihf.config
Unfortunately, only Linux binaries are provided in the repo. So for macOS I need to start from this config.
The changes I did to the config file so far are:
Undefine CT_CONFIGURE_has_xz
Set CT_LOCAL_TARBALLS_DIR / CT_WORK_DIR / CT_PREFIX_DIR to reside on case-sensitive file systems
CT_EXTRA_CFLAGS_FOR_HOST="-fbracket-depth=512"
This fixes "[ERROR] /tmp/ct-ng/fs/.build/src/gcc-4.9.3/gcc/config/arm/neon.md:3486:10917: fatal error: bracket nesting level exceeded maximum of 256".
CT_WANTS_STATIC_LINK=n
CT_CC_GCC_STATIC_LIBSTDCXX=n
These two fix errors during initial sanity checking.
I'm currently stuck at the step "Installing C library headers & start files" where I get these errors during assembly of ../ports/sysdeps/unix/sysv/linux/arm/libc-aeabi_read_tp.S:
ccL1wvil.s: Assembler messages:
ccL1wvil.s:70: Error: invalid constant (ae) after fixup
ccL1wvil.s:143: Error: invalid constant (ff) after fixup
I tried with -mthumb (which leads to "conftest.c:14:1: sorry, unimplemented: Thumb-1 hard-float VFP ABI")
and with -nostartfiles (which lets assembly work for this file but doesn't work on the next one (../ports/sysdeps/unix/sysv/linux/arm/libc-do-syscall.S)
The complete build logs can be found here:
https://scriptreactor.com/rpi1-fixup-error.build.log
https://scriptreactor.com/rpi1-fixup-error-nostartfiles.build.log (with -nostartfiles)
Any idea on what could be tried next?
Xcode version: 8.2.1 (8C1002)
maxOS version: 10.12.3 (16D32)
crosstool-ng installed via "brew install crosstool-ng --with-grep"
Thanks for any input!
Etan
next reply other threads:[~2017-03-09 12:15 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-03-09 12:15 Etan Kissling [this message]
2017-03-09 18:21 ` Alexey Neyman
2017-03-11 21:06 ` Etan Kissling
2017-03-11 22:40 ` Alexey Neyman
2017-03-12 0:03 ` Josh Branning
2017-03-12 1:04 ` Alexey Neyman
2017-03-12 12:14 ` Etan Kissling
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=70FD9E5B-E9D1-43CF-84FF-B64AC54FA6C7@oberon.ch \
--to=kissling@oberon.ch \
--cc=crossgcc@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).