I'm on an old RPi B (maybe a B+). It's pretty ancient, so I might be pushing my luck. Here's my CPU info:
pi@raspberrypi:~ $ cat /proc/cpuinfo processor : 0 model name : ARMv6-compatible processor rev 7 (v6l) BogoMIPS : 697.95 Features : half thumb fastmult vfp edsp java tls CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xb76 CPU revision : 7 Hardware : BCM2835 Revision : 000e Serial : 00000000e9b1ce2d Model : Raspberry Pi Model B Rev 2 Running GDB gives the illegal instruction as <UNDEFINED> instruction: 0xf57ff05a which looks to be a "Data Memory Barrier" instruction? Sounds like a plausible culprit. Thanks! On Tuesday, August 11, 2020 at 2:14:28 PM UTC-7, Matthew Flatt wrote: > > Which model Pi are you using? I'm able to build on a Pi 3, so I wonder > if it's a difference in processors, where the Arm32 backend is using > something that it shouldn't. > > Whether or not that guess is right, can you try running `gdb` in the > "ChezScheme" directory like this? > > env SCHEMEHEAPDIRS=tarm32le/boot/tarm32le/ \ > gdb tarm32le/bin/tarm32le/scheme > > Disassembling around the failed instruction address (with `disassemble` > in gdb) should clarify what instruction is misused. > > Thanks, > Matthew > > At Tue, 11 Aug 2020 10:58:03 -0700 (PDT), Joey Eremondi wrote: > > I'm wondering, does anybody have any prebuilt 32-but ARM binaries for > > Racket on Chez? I'm trying to run a little web-server on a raspberry pi, > > and I'd prefer to use the Chez version, but I can't seem to get it to > build. > > > > Alternately, if anybody knows why it won't build and can help, that > would > > help. With eiether --enable-csracket or --enable-csonly, it gets stuck > > compiling the forked version of ChezScheme. Surprisingly, it doesn't > seem > > to be an out of memory error. Is the illegal instruction error because > it's > > ARMv6 and not AArch32? > > > > ... > > gcc -Wpointer-arith -Wextra -Werror -Wno-implicit-fallthrough -O2 -g > -O2 - > > Wall -DELF_FIND_BOOT_SECTION -pthread -rdynamic -o > ../bin/tarm32le/scheme > > ../boot/tarm32le/main.o ../boot/tarm32le/libkernel.a -lm -ldl -lpthread > -lrt > > -luuid ../zlib/libz.a ../lz4/lib/liblz4.a -pthread > > (cd s && make bootstrap) > > make allx > > rm -f *.tarm32le xpatch patch *.patch *.so *.covin *.asm script.all > header.tmp > > *.html > > rm -rf nanopass > > cp -p -f ../boot/tarm32le/petite.boot ../boot/tarm32le/sbb > > cp -p -f ../boot/tarm32le/scheme.boot ../boot/tarm32le/scb > > make all > > echo '(reset-handler abort)'\ > > '(base-exception-handler (lambda (c) (fresh-line) > > (display-condition c) (newline) (reset)))'\ > > '(keyboard-interrupt-handler (lambda () (display > > "interrupted---aborting\n") (reset)))'\ > > '(optimize-level 3)'\ > > '(debug-level 0)'\ > > '(commonization-level (commonization-level))'\ > > '(compile-compressed #t)'\ > > '(compress-format (compress-format))'\ > > '(compress-level (compress-level))'\ > > '(generate-inspector-information #f)'\ > > '(subset-mode (quote system))'\ > > '(compile-file "cmacros.ss" "cmacros.so")'\ > > | ../bin/tarm32le/scheme -q > > Error: illegal instruction > > () > > make[10]: *** [Mf-base:375: cmacros.so] Error 1 > > make[9]: *** [Mf-base:179: allx] Error 2 > > make[8]: *** [Mf-base:196: bootstrap] Error 2 > > make[7]: *** [Makefile:22: build] Error 2 > > make[6]: *** [Makefile:20: build] Error 2 > > make[6]: Leaving directory '/home/pi/gh/racket-7.8/src/ChezScheme' > > make[5]: *** [Makefile:158: scheme-make-finish] Error 2 > > make[5]: Leaving directory '/home/pi/gh/racket-7.8/src/cs/c' > > make[4]: *** [Makefile:148: scheme-make-copy] Error 2 > > make[4]: Leaving directory '/home/pi/gh/racket-7.8/src/cs/c' > > make[3]: *** [Makefile:137: scheme] Error 2 > > make[3]: Leaving directory '/home/pi/gh/racket-7.8/src/cs/c' > > make[2]: *** [Makefile:60: cs] Error 2 > > make[2]: Leaving directory '/home/pi/gh/racket-7.8/src/cs/c' > > make[1]: *** [Makefile:90: racketcs] Error 2 > > make[1]: Leaving directory '/home/pi/gh/racket-7.8/src' > > make: *** [Makefile:53: all] Error 2 > > > > > > -- > > You received this message because you are subscribed to the Google > Groups > > "Racket Users" group. > > To unsubscribe from this group and stop receiving emails from it, send > an > > email to racket...@googlegroups.com <javascript:>. > > To view this discussion on the web visit > > > https://groups.google.com/d/msgid/racket-users/9b0c4921-2155-4f63-bb79-a6b9ea05 > > > 8ef6o%40googlegroups.com. > -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/racket-users/eca60f12-db4b-4f79-ae2a-681a00898ba4o%40googlegroups.com.