#Trying to build CP on macOS 15.7 on
1 messages · Page 1 of 1 (latest)
gmake -d output is voluminous and ends with
../py/mkrules.mk:104: update target 'build/py/emitnx64.o' due to: target does not exist
: "CC ../py/emitnx64.c"
Putting child 0x7fdd8a205ac0 (build/py/emitnx64.o) PID 40851 on the chain.
Live child 0x7fdd8a205ac0 (build/py/emitnx64.o) PID 40851
Reaping winning child 0x7fdd8a205ac0 PID 40851
clang -DFFCONF_H=\"lib/oofatfs/ffconf.h\" -I. -Ibuild -I.. -Wall -Werror -Wextra -Wno-unused-parameter -Wpointer-arith -std=gnu99 -Os -fdata-sections -ffunction-sections -fno-asynchronous-unwind-tables -DCIRCUITPY -c -MD -MF build/py/emitnx64.d -o build/py/emitnx64.o ../py/emitnx64.c || (echo -e "See \033[1;31mhttps://learn.adafruit.com/building-circuitpython; Adafruit Discord #circuitpython-dev\033[0m"; false)
Live child 0x7fdd8a205ac0 (build/py/emitnx64.o) PID 40852
In file included from ../py/emitnx64.c:16:
../py/emitnative.c:2423:5: error: variable length array folded to constant array as an extension [-Werror,-Wgnu-folding-constant]
2423 | MP_STATIC_ASSERT(MP_OBJ_STOP_ITERATION == 0);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../py/misc.h:57:51: note: expanded from macro 'MP_STATIC_ASSERT'
57 | #define MP_STATIC_ASSERT(cond) ((void)sizeof(char[1 - 2 * !(cond)]))
| ^~~~~~~~~~~~~~~
1 error generated.
Also see https://github.com/adafruit/circuitpython/issues/10651. Are you the same person?
I don't see this on the tip of main when compiling in Ubuntu 24.04.
I can try this on macOS later this evening.
Try 14.2.Rel1 for gcc. That's what I currently have
14.3.Rel1 is OK for me on Ubuntu 24.04. rm -rf mpy-cross/build to get a clean build if you have not already done that.
Wait, this is for Mpy-cross, which will use the native gcc, not arm-none-eabi-gcc.
What version is regular gcc?
The native gcc is the vendor compiler in Xcode 26 command line tools
$ gcc --version
Apple clang version 17.0.0 (clang-1700.3.19.1)
Target: x86_64-apple-darwin24.6.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
And no, I am not the person who filed https://github.com/adafruit/circuitpython/issues/10651
Both you and the issue poster are using clang 17, which is obviously doing some extra warning processing that gcc is not. This code is inherited from MicroPython and I'll see if they have encountered this problem..
FWIW i was able to build mpy-cross in latest MP without problems, but I didn't look beyond that to see what the diff is.
micropython doesn't turn on as many warnings as we do, so there may be no code difference
... and, there isn't, at least at line 2423.
aha, fixed by micropython a few days ago: https://github.com/micropython/micropython/issues/18116
Aha!
i'm making a PR and testing