% env GOCHAR=5 GOARM=5 GOARCH=arm /usr/local/go1.5/bin/go build -o xpi-www
% file xpi-www
xpi-www: ELF 32-bit LSB executable, ARM, version 1 (FreeBSD), statically linked, not stripped--
You received this message because you are subscribed to the Google Groups "golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
I am sorry, I misunderstood. If twiddling GOARM doesn't help, please gdb the binary and tell me what it thinks signal 4 is. I'm suspecting SIGILL.
% env GOARM=5 GOARCH=arm /usr/local/go1.5/bin/go build -o g5
% env GOARM=6 GOARCH=arm /usr/local/go1.5/bin/go build -o g6
% env GOARM=7 GOARCH=arm /usr/local/go1.5/bin/go build -o g7# g5 Illegal instruction (core dumped) # g6 Illegal instruction # g7 Illegal instruction
# echo "run" > /tmp/c
# gdb -batch -x /tmp/c /usr/bin/g5
[GDB will not be able to debug user-mode threads: Shared object "libthread_db.so" not found, required by "gdb"]
warning: shared library handler failed to enable breakpoint
Program received signal SIGILL, Illegal instruction.
runtime.armPublicationBarrier () at /usr/local/go1.5/src/runtime/asm_arm.s:747
warning: Source file is more recent than executable.
747 WORD $0xf57ff05e // DMB ST
Current language: auto; currently minimal
# gdb -batch -x /tmp/c /usr/bin/g6
[GDB will not be able to debug user-mode threads: Shared object "libthread_db.so" not found, required by "gdb"]
warning: shared library handler failed to enable breakpoint
Program received signal SIGILL, Illegal instruction.
runtime.armPublicationBarrier () at /usr/local/go1.5/src/runtime/asm_arm.s:747
warning: Source file is more recent than executable.
747 WORD $0xf57ff05e // DMB ST
Current language: auto; currently minimal
# gdb -batch -x /tmp/c /usr/bin/g7
[GDB will not be able to debug user-mode threads: Shared object "libthread_db.so" not found, required by "gdb"]
warning: shared library handler failed to enable breakpoint
Program received signal SIGILL, Illegal instruction.
runtime.check () at /usr/local/go1.5/src/runtime/runtime1.go:146
146 /usr/local/go1.5/src/runtime/runtime1.go: No such file or directory.
in /usr/local/go1.5/src/runtime/runtime1.go
Current language: auto; currently minimal[+austin]
Austin, this is probably why Linux is broken on the dashboard too?
We only support freebsd/arm on armv6 and above (and so does freebsd itself)
If this workaround can be used for just freebsd_arm (travelling ATM) then it should be OK.