Skip to content

macOS compilation error report #6

@d51r3verse

Description

@d51r3verse

I don't know this is proper place to report compilation issue....

 PC % git submodule update --init
Submodule 'lib/SDL' (https://github.com/libsdl-org/SDL) registered for path 'lib/SDL'
Submodule 'lib/esp-idf' (https://github.com/espressif/esp-idf) registered for path 'lib/esp-idf'
Cloning into '/Users/snip/Downloads/micropython/lvgl_micropython/lib/SDL'...
Cloning into '/Users/snip/Downloads/micropython/lvgl_micropython/lib/esp-idf'...
Submodule path 'lib/SDL': checked out '6ad390fc5093bcbf785b7ad103484501d11d8c2a'
Submodule path 'lib/esp-idf': checked out '67c1de1eebe095d554d281952fde63c16ee2dca0'

 PC % export PIP_USER=yes; lib/esp-idf/install.sh                                                                            
Detecting the Python interpreter
Checking "python3" ...
Python 3.14.2
"python3" has been detected
Checking Python compatibility
Installing ESP-IDF tools
Updating /Users/snip/.espressif/idf-env.json
Selected targets are: esp32c5, esp32c61, esp32s2, esp32s3, esp32c2, esp32c3, esp32h2, esp32p4, esp32c6, esp32
Current system platform: macos-arm64
...
...
...
Using cached truststore-0.10.4-py3-none-any.whl (18 kB)
Installing collected packages: reedsolo, pyserial, ..., ..., ..., esp-idf-monitor
Successfully installed PyYAML-6.0.3 ... ... ... urllib3-1.26.20
All done! You can now run:

  . lib/esp-idf/export.sh

 PC % alias get_idf='export PIP_USER=yes; . $HOME/Downloads/micropython/lvgl_micropython/lib/esp-idf/export.sh'
 PC % . lib/esp-idf/export.sh
Checking "python3" ...
Python 3.14.2
"python3" has been detected
Activating ESP-IDF 5.4
* Checking python version ... 3.14.2
* Checking python dependencies ... OK
* Deactivating the current ESP-IDF environment (if any) ... OK
* Establishing a new ESP-IDF environment ... OK
* Identifying shell ... zsh
* Detecting outdated tools in system ... Found tools that are not used by active ESP-IDF version.
For removing old versions of openocd-esp32, xtensa-esp-elf-gdb, riscv32-esp-elf-gdb use command 'python /Users/snip/Downloads/micropython/lvgl_micropython/lib/esp-idf/tools/idf_tools.py uninstall'
To free up even more space, remove installation packages of those tools.
Use option python /Users/snip/Downloads/micropython/lvgl_micropython/lib/esp-idf/tools/idf_tools.py uninstall --remove-archives.
* Shell completion ... Autocompletion code generated

Done! You can now compile ESP-IDF projects.
Go to the project directory and run:

  idf.py build
 PC % 
 PC % gcc --version
Apple clang version 17.0.0 (clang-1700.6.3.2)
Target: arm64-apple-darwin25.2.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
 PC % cmake --version
cmake version 4.2.3

CMake suite maintained and supported by Kitware (kitware.com/cmake).
 PC % ninja --version
1.13.2

 PC % make --version
GNU Make 3.81
Copyright (C) 2006  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.

This program built for i386-apple-darwin11.3.0

 PC % python3 make.py esp32 BOARD=ESP32_GENERIC_S3 BOARD_VARIANT=SPIRAM_OCT --flash-size=16 DISPLAY=axs15231b INDEV=axs15231 --skip-partition-resize --partition-size=4194304 --ota FROZEN_MANIFEST='new_SPI.py'

Compiling mpy-cross....
Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.
CC ../py/emitnx64.c
-e See https://github.com/micropython/micropython/wiki/Build-Troubleshooting
In file included from ../py/emitnx64.c:16:
../py/emitnative.c:2381:5: error: variable length array folded to constant array as an extension [-Werror,-Wgnu-folding-constant]
2381 |     MP_STATIC_ASSERT(MP_OBJ_STOP_ITERATION == 0);
|     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../py/misc.h:54:51: note: expanded from macro 'MP_STATIC_ASSERT'
54 | #define MP_STATIC_ASSERT(cond) ((void)sizeof(char[1 - 2 * !(cond)]))
|                                                   ^~~~~~~~~~~~~~~
1 error generated.
make: *** [build/py/emitnx64.o] Error 1

Maybe cherry pick required(especially for macos)?
micropython/micropython@33cf1ab
Manual apply, then passed.

But, Am I was wrong with my manifest?

 PC % cat new_SPI.py 
include("$(PORT_DIR)/boards/manifest.py")
DRV_PATH = "../micropython_lcd/device/JC3248W535/new_SPI"
freeze(DRV_PATH, "_axs15231b_init.py")
freeze(DRV_PATH, "axs15231b.py")
freeze(DRV_PATH, "lv_config.py")
freeze(DRV_PATH, "lv_config_90.py")

Stucked at 1478/2348 - ext_mod/lcd_bus/esp32_src

[1478/2348] Building C object esp-idf/main/CMakeFiles/__idf_main.dir/Users/snip/Downloads/micropython/lvgl_micropython/ext_mod/lcd_bus/esp32_src/ VARIOUS .c.obj like i80_bus or spi_bus_fast_task or so ... random
ninja: build stopped: subcommand failed.
ninja failed with exit code 1

Then several more casual error was resolved.
But....

import lv_config
Traceback (most recent call last):
File "", line 1, in
File "/lib/lv_config.py", line 92, in
File "axs15231b.py", line 76, in init
RuntimeError: incompatable bus driver

I'm giving up to use my own build

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions