I tried to build lv_micropython on mac OS Monterey using unix port but it fails:
Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.
LVGL-GEN build-standard/lvgl/lv_mpy.c
cp ../../lib/lv_bindings/driver/png/lodepng/lodepng.cpp build-standard/lodepng/lodepng.c
LODEPNG-GEN build-standard/lodepng/mp_lodepng.c
mkdir -p build-standard/genhdr
GEN build-standard/genhdr/mpversion.h
GEN build-standard/genhdr/moduledefs.h
GEN build-standard/genhdr/qstr.i.last
GEN build-standard/genhdr/qstr.split
GEN build-standard/genhdr/qstrdefs.collected.h
QSTR updated
GEN build-standard/genhdr/qstrdefs.generated.h
mkdir -p build-standard/build-standard
mkdir -p build-standard/build-standard/lodepng
mkdir -p build-standard/build-standard/lvgl
mkdir -p build-standard/extmod
mkdir -p build-standard/lib/axtls/crypto
mkdir -p build-standard/lib/axtls/ssl
mkdir -p build-standard/lib/berkeley-db-1.xx/btree
mkdir -p build-standard/lib/berkeley-db-1.xx/mpool
mkdir -p build-standard/lib/lv_bindings/driver/SDL
mkdir -p build-standard/lib/lv_bindings/driver/png
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/anim
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/assets
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/event
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/get_started
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/layouts/flex
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/layouts/grid
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/libs/bmp
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/libs/ffmpeg
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/libs/freetype
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/libs/gif
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/libs/png
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/libs/qrcode
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/libs/rlottie
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/libs/sjpg
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/others/monkey
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/others/snapshot
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/porting
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/scroll
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/styles
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/animimg
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/arc
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/bar
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/btn
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/btnmatrix
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/calendar
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/canvas
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/chart
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/checkbox
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/colorwheel
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/dropdown
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/img
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/imgbtn
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/keyboard
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/label
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/led
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/line
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/list
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/menu
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/meter
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/msgbox
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/obj
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/roller
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/slider
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/span
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/spinbox
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/spinner
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/switch
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/table
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/tabview
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/textarea
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/tileview
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/win
mkdir -p build-standard/lib/lv_bindings/lvgl/src/core
mkdir -p build-standard/lib/lv_bindings/lvgl/src/draw
mkdir -p build-standard/lib/lv_bindings/lvgl/src/draw/nxp_pxp
mkdir -p build-standard/lib/lv_bindings/lvgl/src/draw/nxp_vglite
mkdir -p build-standard/lib/lv_bindings/lvgl/src/draw/sdl
mkdir -p build-standard/lib/lv_bindings/lvgl/src/draw/stm32_dma2d
mkdir -p build-standard/lib/lv_bindings/lvgl/src/draw/sw
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/layouts/flex
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/layouts/grid
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/libs/bmp
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/libs/ffmpeg
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/libs/freetype
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/libs/fsdrv
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/libs/gif
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/libs/png
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/libs/qrcode
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/libs/rlottie
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/libs/sjpg
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/others/monkey
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/others/snapshot
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/themes/basic
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/themes/default
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/themes/mono
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/animimg
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/calendar
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/chart
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/colorwheel
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/imgbtn
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/keyboard
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/led
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/list
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/menu
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/meter
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/msgbox
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/span
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/spinbox
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/spinner
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/tabview
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/tileview
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/win
mkdir -p build-standard/lib/lv_bindings/lvgl/src/font
mkdir -p build-standard/lib/lv_bindings/lvgl/src/hal
mkdir -p build-standard/lib/lv_bindings/lvgl/src/misc
mkdir -p build-standard/lib/lv_bindings/lvgl/src/widgets
mkdir -p build-standard/py
mkdir -p build-standard/shared/libc
mkdir -p build-standard/shared/readline
mkdir -p build-standard/shared/runtime
mkdir -p build-standard/shared/timeutils
CC ../../py/mpstate.c
CC ../../py/nlr.c
CC ../../py/nlrx86.c
CC ../../py/nlrx64.c
CC ../../py/nlrthumb.c
CC ../../py/nlraarch64.c
CC ../../py/nlrpowerpc.c
CC ../../py/nlrxtensa.c
CC ../../py/nlrsetjmp.c
CC ../../py/malloc.c
CC ../../py/gc.c
CC ../../py/pystack.c
CC ../../py/qstr.c
CC ../../py/vstr.c
CC ../../py/mpprint.c
CC ../../py/unicode.c
CC ../../py/mpz.c
CC ../../py/reader.c
CC ../../py/lexer.c
CC ../../py/parse.c
CC ../../py/scope.c
CC ../../py/compile.c
CC ../../py/emitcommon.c
CC ../../py/emitbc.c
CC ../../py/asmbase.c
CC ../../py/asmx64.c
CC ../../py/emitnx64.c
CC ../../py/asmx86.c
CC ../../py/emitnx86.c
CC ../../py/asmthumb.c
CC ../../py/emitnthumb.c
CC ../../py/emitinlinethumb.c
CC ../../py/asmarm.c
CC ../../py/emitnarm.c
CC ../../py/asmxtensa.c
CC ../../py/emitnxtensa.c
CC ../../py/emitinlinextensa.c
CC ../../py/emitnxtensawin.c
CC ../../py/formatfloat.c
CC ../../py/parsenumbase.c
CC ../../py/parsenum.c
CC ../../py/emitglue.c
CC ../../py/persistentcode.c
CC ../../py/runtime.c
CC ../../py/runtime_utils.c
CC ../../py/scheduler.c
CC ../../py/nativeglue.c
CC ../../py/pairheap.c
CC ../../py/ringbuf.c
CC ../../py/stackctrl.c
CC ../../py/argcheck.c
CC ../../py/warning.c
CC ../../py/profile.c
CC ../../py/map.c
CC ../../py/obj.c
CC ../../py/objarray.c
CC ../../py/objattrtuple.c
CC ../../py/objbool.c
CC ../../py/objboundmeth.c
CC ../../py/objcell.c
CC ../../py/objclosure.c
CC ../../py/objcomplex.c
CC ../../py/objdeque.c
CC ../../py/objdict.c
CC ../../py/objenumerate.c
CC ../../py/objexcept.c
CC ../../py/objfilter.c
CC ../../py/objfloat.c
CC ../../py/objfun.c
CC ../../py/objgenerator.c
CC ../../py/objgetitemiter.c
CC ../../py/objint.c
CC ../../py/objint_longlong.c
CC ../../py/objint_mpz.c
CC ../../py/objlist.c
CC ../../py/objmap.c
CC ../../py/objmodule.c
CC ../../py/objobject.c
CC ../../py/objpolyiter.c
CC ../../py/objproperty.c
CC ../../py/objnone.c
CC ../../py/objnamedtuple.c
CC ../../py/objrange.c
CC ../../py/objreversed.c
CC ../../py/objset.c
CC ../../py/objsingleton.c
CC ../../py/objslice.c
CC ../../py/objstr.c
CC ../../py/objstrunicode.c
CC ../../py/objstringio.c
CC ../../py/objtuple.c
CC ../../py/objtype.c
CC ../../py/objzip.c
CC ../../py/opmethods.c
CC ../../py/sequence.c
CC ../../py/stream.c
CC ../../py/binary.c
CC ../../py/builtinimport.c
CC ../../py/builtinevex.c
CC ../../py/builtinhelp.c
CC ../../py/modarray.c
CC ../../py/modbuiltins.c
CC ../../py/modcollections.c
CC ../../py/modgc.c
CC ../../py/modio.c
CC ../../py/modmath.c
CC ../../py/modcmath.c
CC ../../py/modmicropython.c
CC ../../py/modstruct.c
CC ../../py/modsys.c
CC ../../py/moduerrno.c
CC ../../py/modthread.c
CC ../../py/vm.c
CC ../../py/bc.c
CC ../../py/showbc.c
CC ../../py/repl.c
CC ../../py/smallint.c
CC ../../py/frozenmod.c
CC ../../extmod/moduasyncio.c
CC ../../extmod/moductypes.c
CC ../../extmod/modujson.c
CC ../../extmod/modure.c
CC ../../extmod/moduzlib.c
CC ../../extmod/moduheapq.c
CC ../../extmod/modutimeq.c
CC ../../extmod/moduhashlib.c
CC ../../extmod/moducryptolib.c
CC ../../extmod/modubinascii.c
CC ../../extmod/virtpin.c
CC ../../extmod/machine_bitstream.c
CC ../../extmod/machine_mem.c
CC ../../extmod/machine_pinbase.c
CC ../../extmod/machine_signal.c
CC ../../extmod/machine_pulse.c
CC ../../extmod/machine_i2c.c
CC ../../extmod/machine_spi.c
CC ../../extmod/modbluetooth.c
CC ../../extmod/modussl_axtls.c
CC ../../extmod/modussl_mbedtls.c
CC ../../extmod/modurandom.c
CC ../../extmod/moduselect.c
CC ../../extmod/moduwebsocket.c
CC ../../extmod/modwebrepl.c
CC ../../extmod/modframebuf.c
CC ../../extmod/vfs.c
CC ../../extmod/vfs_blockdev.c
CC ../../extmod/vfs_reader.c
CC ../../extmod/vfs_posix.c
CC ../../extmod/vfs_posix_file.c
CC ../../extmod/vfs_fat.c
CC ../../extmod/vfs_fat_diskio.c
CC ../../extmod/vfs_fat_file.c
CC ../../extmod/vfs_lfs.c
CC ../../extmod/utime_mphal.c
CC ../../extmod/uos_dupterm.c
CC ../../shared/libc/abort_.c
CC ../../shared/libc/printf.c
MPY upip.py
MPY upip_utarfile.py
MPY evdev.py
MPY lv_timer.py
MPY display_driver_utils.py
MPY display_driver.py
MPY imagetools.py
MPY fs_driver.py
MPY lv_utils.py
GEN build-standard/frozen_content.c
CC build-standard/frozen_content.c
build-standard/frozen_content.c:6374:96: error: argument to 'section' attribute is not valid for this target: mach-o section specifier uses an unknown section type
STATIC const byte fun_data_imagetools__lt_module_gt__get_png_info[1825] __attribute__((section(".text,\"ax\",@progbits # "))) = {
^
build-standard/frozen_content.c:6579:83: error: argument to 'section' attribute is not valid for this target: mach-o section specifier uses an unknown section type
STATIC const byte fun_data_imagetools__lt_module_gt__[979] __attribute__((section(".text,\"ax\",@progbits # "))) = {
^
build-standard/frozen_content.c:6669:84: error: argument to 'section' attribute is not valid for this target: mach-o section specifier uses an unknown section type
STATIC const byte fun_data_imagetools__lt_module_gt__2[979] __attribute__((section(".text,\"ax\",@progbits # "))) = {
^
build-standard/frozen_content.c:6759:84: error: argument to 'section' attribute is not valid for this target: mach-o section specifier uses an unknown section type
STATIC const byte fun_data_imagetools__lt_module_gt__3[770] __attribute__((section(".text,\"ax\",@progbits # "))) = {
^
build-standard/frozen_content.c:6836:92: error: argument to 'section' attribute is not valid for this target: mach-o section specifier uses an unknown section type
STATIC const byte fun_data_imagetools__lt_module_gt__open_png[1537] __attribute__((section(".text,\"ax\",@progbits # "))) = {
^
5 errors generated.
make: *** [build-standard/build-standard/frozen_content.o] Error 1
I was expecting it to work since official micropython builds without a problem. Does it mean that lv_micropython wont compile on mac os?
lv_micropython is aligned to latest Micropython release, which is v1.17.
When you are saying that “official micropython builds without a problem” - did you check v1.17 official release, or just latest Micropython from git?
I’m not aware of any reason why lv_micropython won’t compile on mac os, if the official version does.
The offending “section” argument is created by mpy-tool.py, which is almost the same between lv_micropython and official Micropython v1.17.
Thank you for your reply and I am sorry for the delayed answer.
I was indeed building latest micropython from git, but I checked with the official release v1.17 moment ago and it also builds. The problem occurs only with lv_micropython. I was building MicroPython according to this official(?) guide.
Removing decorators from imagetools.py allowed to build frozen_content.c, but it fails anyway later…
Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity.
LVGL-GEN build-standard/lvgl/lv_mpy.c
cp ../../lib/lv_bindings/driver/png/lodepng/lodepng.cpp build-standard/lodepng/lodepng.c
LODEPNG-GEN build-standard/lodepng/mp_lodepng.c
mkdir -p build-standard/genhdr
GEN build-standard/genhdr/mpversion.h
GEN build-standard/genhdr/moduledefs.h
GEN build-standard/genhdr/qstr.i.last
GEN build-standard/genhdr/qstr.split
GEN build-standard/genhdr/qstrdefs.collected.h
QSTR updated
GEN build-standard/genhdr/qstrdefs.generated.h
mkdir -p build-standard/build-standard
mkdir -p build-standard/build-standard/lodepng
mkdir -p build-standard/build-standard/lvgl
mkdir -p build-standard/extmod
mkdir -p build-standard/lib/axtls/crypto
mkdir -p build-standard/lib/axtls/ssl
mkdir -p build-standard/lib/berkeley-db-1.xx/btree
mkdir -p build-standard/lib/berkeley-db-1.xx/mpool
mkdir -p build-standard/lib/lv_bindings/driver/SDL
mkdir -p build-standard/lib/lv_bindings/driver/png
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/anim
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/assets
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/event
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/get_started
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/layouts/flex
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/layouts/grid
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/libs/bmp
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/libs/ffmpeg
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/libs/freetype
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/libs/gif
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/libs/png
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/libs/qrcode
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/libs/rlottie
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/libs/sjpg
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/others/monkey
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/others/snapshot
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/porting
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/scroll
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/styles
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/animimg
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/arc
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/bar
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/btn
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/btnmatrix
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/calendar
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/canvas
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/chart
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/checkbox
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/colorwheel
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/dropdown
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/img
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/imgbtn
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/keyboard
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/label
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/led
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/line
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/list
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/menu
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/meter
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/msgbox
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/obj
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/roller
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/slider
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/span
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/spinbox
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/spinner
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/switch
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/table
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/tabview
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/textarea
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/tileview
mkdir -p build-standard/lib/lv_bindings/lvgl/examples/widgets/win
mkdir -p build-standard/lib/lv_bindings/lvgl/src/core
mkdir -p build-standard/lib/lv_bindings/lvgl/src/draw
mkdir -p build-standard/lib/lv_bindings/lvgl/src/draw/nxp_pxp
mkdir -p build-standard/lib/lv_bindings/lvgl/src/draw/nxp_vglite
mkdir -p build-standard/lib/lv_bindings/lvgl/src/draw/sdl
mkdir -p build-standard/lib/lv_bindings/lvgl/src/draw/stm32_dma2d
mkdir -p build-standard/lib/lv_bindings/lvgl/src/draw/sw
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/layouts/flex
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/layouts/grid
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/libs/bmp
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/libs/ffmpeg
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/libs/freetype
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/libs/fsdrv
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/libs/gif
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/libs/png
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/libs/qrcode
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/libs/rlottie
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/libs/sjpg
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/others/monkey
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/others/snapshot
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/themes/basic
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/themes/default
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/themes/mono
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/animimg
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/calendar
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/chart
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/colorwheel
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/imgbtn
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/keyboard
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/led
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/list
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/menu
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/meter
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/msgbox
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/span
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/spinbox
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/spinner
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/tabview
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/tileview
mkdir -p build-standard/lib/lv_bindings/lvgl/src/extra/widgets/win
mkdir -p build-standard/lib/lv_bindings/lvgl/src/font
mkdir -p build-standard/lib/lv_bindings/lvgl/src/hal
mkdir -p build-standard/lib/lv_bindings/lvgl/src/misc
mkdir -p build-standard/lib/lv_bindings/lvgl/src/widgets
mkdir -p build-standard/py
mkdir -p build-standard/shared/libc
mkdir -p build-standard/shared/readline
mkdir -p build-standard/shared/runtime
mkdir -p build-standard/shared/timeutils
CC ../../py/mpstate.c
CC ../../py/nlr.c
CC ../../py/nlrx86.c
CC ../../py/nlrx64.c
CC ../../py/nlrthumb.c
CC ../../py/nlraarch64.c
CC ../../py/nlrpowerpc.c
CC ../../py/nlrxtensa.c
CC ../../py/nlrsetjmp.c
CC ../../py/malloc.c
CC ../../py/gc.c
CC ../../py/pystack.c
CC ../../py/qstr.c
CC ../../py/vstr.c
CC ../../py/mpprint.c
CC ../../py/unicode.c
CC ../../py/mpz.c
CC ../../py/reader.c
CC ../../py/lexer.c
CC ../../py/parse.c
CC ../../py/scope.c
CC ../../py/compile.c
CC ../../py/emitcommon.c
CC ../../py/emitbc.c
CC ../../py/asmbase.c
CC ../../py/asmx64.c
CC ../../py/emitnx64.c
CC ../../py/asmx86.c
CC ../../py/emitnx86.c
CC ../../py/asmthumb.c
CC ../../py/emitnthumb.c
CC ../../py/emitinlinethumb.c
CC ../../py/asmarm.c
CC ../../py/emitnarm.c
CC ../../py/asmxtensa.c
CC ../../py/emitnxtensa.c
CC ../../py/emitinlinextensa.c
CC ../../py/emitnxtensawin.c
CC ../../py/formatfloat.c
CC ../../py/parsenumbase.c
CC ../../py/parsenum.c
CC ../../py/emitglue.c
CC ../../py/persistentcode.c
CC ../../py/runtime.c
CC ../../py/runtime_utils.c
CC ../../py/scheduler.c
CC ../../py/nativeglue.c
CC ../../py/pairheap.c
CC ../../py/ringbuf.c
CC ../../py/stackctrl.c
CC ../../py/argcheck.c
CC ../../py/warning.c
CC ../../py/profile.c
CC ../../py/map.c
CC ../../py/obj.c
CC ../../py/objarray.c
CC ../../py/objattrtuple.c
CC ../../py/objbool.c
CC ../../py/objboundmeth.c
CC ../../py/objcell.c
CC ../../py/objclosure.c
CC ../../py/objcomplex.c
CC ../../py/objdeque.c
CC ../../py/objdict.c
CC ../../py/objenumerate.c
CC ../../py/objexcept.c
CC ../../py/objfilter.c
CC ../../py/objfloat.c
CC ../../py/objfun.c
CC ../../py/objgenerator.c
CC ../../py/objgetitemiter.c
CC ../../py/objint.c
CC ../../py/objint_longlong.c
CC ../../py/objint_mpz.c
CC ../../py/objlist.c
CC ../../py/objmap.c
CC ../../py/objmodule.c
CC ../../py/objobject.c
CC ../../py/objpolyiter.c
CC ../../py/objproperty.c
CC ../../py/objnone.c
CC ../../py/objnamedtuple.c
CC ../../py/objrange.c
CC ../../py/objreversed.c
CC ../../py/objset.c
CC ../../py/objsingleton.c
CC ../../py/objslice.c
CC ../../py/objstr.c
CC ../../py/objstrunicode.c
CC ../../py/objstringio.c
CC ../../py/objtuple.c
CC ../../py/objtype.c
CC ../../py/objzip.c
CC ../../py/opmethods.c
CC ../../py/sequence.c
CC ../../py/stream.c
CC ../../py/binary.c
CC ../../py/builtinimport.c
CC ../../py/builtinevex.c
CC ../../py/builtinhelp.c
CC ../../py/modarray.c
CC ../../py/modbuiltins.c
CC ../../py/modcollections.c
CC ../../py/modgc.c
CC ../../py/modio.c
CC ../../py/modmath.c
CC ../../py/modcmath.c
CC ../../py/modmicropython.c
CC ../../py/modstruct.c
CC ../../py/modsys.c
CC ../../py/moduerrno.c
CC ../../py/modthread.c
CC ../../py/vm.c
CC ../../py/bc.c
CC ../../py/showbc.c
CC ../../py/repl.c
CC ../../py/smallint.c
CC ../../py/frozenmod.c
CC ../../extmod/moduasyncio.c
CC ../../extmod/moductypes.c
CC ../../extmod/modujson.c
CC ../../extmod/modure.c
CC ../../extmod/moduzlib.c
CC ../../extmod/moduheapq.c
CC ../../extmod/modutimeq.c
CC ../../extmod/moduhashlib.c
CC ../../extmod/moducryptolib.c
CC ../../extmod/modubinascii.c
CC ../../extmod/virtpin.c
CC ../../extmod/machine_bitstream.c
CC ../../extmod/machine_mem.c
CC ../../extmod/machine_pinbase.c
CC ../../extmod/machine_signal.c
CC ../../extmod/machine_pulse.c
CC ../../extmod/machine_i2c.c
CC ../../extmod/machine_spi.c
CC ../../extmod/modbluetooth.c
CC ../../extmod/modussl_axtls.c
CC ../../extmod/modussl_mbedtls.c
CC ../../extmod/modurandom.c
CC ../../extmod/moduselect.c
CC ../../extmod/moduwebsocket.c
CC ../../extmod/modwebrepl.c
CC ../../extmod/modframebuf.c
CC ../../extmod/vfs.c
CC ../../extmod/vfs_blockdev.c
CC ../../extmod/vfs_reader.c
CC ../../extmod/vfs_posix.c
CC ../../extmod/vfs_posix_file.c
CC ../../extmod/vfs_fat.c
CC ../../extmod/vfs_fat_diskio.c
CC ../../extmod/vfs_fat_file.c
CC ../../extmod/vfs_lfs.c
CC ../../extmod/utime_mphal.c
CC ../../extmod/uos_dupterm.c
CC ../../shared/libc/abort_.c
CC ../../shared/libc/printf.c
MPY upip.py
MPY upip_utarfile.py
MPY evdev.py
MPY lv_timer.py
MPY display_driver_utils.py
MPY display_driver.py
MPY imagetools.py
MPY fs_driver.py
MPY lv_utils.py
GEN build-standard/frozen_content.c
CC build-standard/frozen_content.c
CC main.c
CC gccollect.c
CC unix_mphal.c
CC mpthreadport.c
CC input.c
CC modmachine.c
CC modos.c
CC moduos_vfs.c
CC modtime.c
CC moduselect.c
CC alloc.c
CC fatfs_port.c
CC mpbthciport.c
CC mpbtstackport_common.c
CC mpbtstackport_h4.c
CC mpbtstackport_usb.c
CC mpnimbleport.c
CC ../../lib/lv_bindings/lvgl/src/misc/lv_utils.c
CC ../../lib/lv_bindings/lvgl/src/misc/lv_txt.c
CC ../../lib/lv_bindings/lvgl/src/misc/lv_anim_timeline.c
CC ../../lib/lv_bindings/lvgl/src/misc/lv_style.c
CC ../../lib/lv_bindings/lvgl/src/misc/lv_style_gen.c
CC ../../lib/lv_bindings/lvgl/src/misc/lv_mem.c
CC ../../lib/lv_bindings/lvgl/src/misc/lv_fs.c
CC ../../lib/lv_bindings/lvgl/src/misc/lv_txt_ap.c
CC ../../lib/lv_bindings/lvgl/src/misc/lv_color.c
CC ../../lib/lv_bindings/lvgl/src/misc/lv_ll.c
CC ../../lib/lv_bindings/lvgl/src/misc/lv_log.c
CC ../../lib/lv_bindings/lvgl/src/misc/lv_area.c
CC ../../lib/lv_bindings/lvgl/src/misc/lv_lru.c
CC ../../lib/lv_bindings/lvgl/src/misc/lv_timer.c
CC ../../lib/lv_bindings/lvgl/src/misc/lv_async.c
CC ../../lib/lv_bindings/lvgl/src/misc/lv_templ.c
CC ../../lib/lv_bindings/lvgl/src/misc/lv_printf.c
CC ../../lib/lv_bindings/lvgl/src/misc/lv_tlsf.c
CC ../../lib/lv_bindings/lvgl/src/misc/lv_math.c
CC ../../lib/lv_bindings/lvgl/src/misc/lv_anim.c
CC ../../lib/lv_bindings/lvgl/src/misc/lv_gc.c
CC ../../lib/lv_bindings/lvgl/src/misc/lv_bidi.c
CC ../../lib/lv_bindings/lvgl/src/core/lv_indev.c
CC ../../lib/lv_bindings/lvgl/src/core/lv_theme.c
CC ../../lib/lv_bindings/lvgl/src/core/lv_disp.c
CC ../../lib/lv_bindings/lvgl/src/core/lv_obj_class.c
CC ../../lib/lv_bindings/lvgl/src/core/lv_refr.c
CC ../../lib/lv_bindings/lvgl/src/core/lv_event.c
CC ../../lib/lv_bindings/lvgl/src/core/lv_obj_draw.c
CC ../../lib/lv_bindings/lvgl/src/core/lv_obj.c
CC ../../lib/lv_bindings/lvgl/src/core/lv_obj_style_gen.c
CC ../../lib/lv_bindings/lvgl/src/core/lv_obj_style.c
CC ../../lib/lv_bindings/lvgl/src/core/lv_group.c
CC ../../lib/lv_bindings/lvgl/src/core/lv_indev_scroll.c
CC ../../lib/lv_bindings/lvgl/src/core/lv_obj_pos.c
CC ../../lib/lv_bindings/lvgl/src/core/lv_obj_tree.c
CC ../../lib/lv_bindings/lvgl/src/core/lv_obj_scroll.c
CC ../../lib/lv_bindings/lvgl/src/hal/lv_hal_tick.c
CC ../../lib/lv_bindings/lvgl/src/hal/lv_hal_indev.c
CC ../../lib/lv_bindings/lvgl/src/hal/lv_hal_disp.c
CC ../../lib/lv_bindings/lvgl/src/extra/others/snapshot/lv_snapshot.c
CC ../../lib/lv_bindings/lvgl/src/extra/others/monkey/lv_monkey.c
CC ../../lib/lv_bindings/lvgl/src/extra/libs/ffmpeg/lv_ffmpeg.c
CC ../../lib/lv_bindings/lvgl/src/extra/libs/sjpg/tjpgd.c
CC ../../lib/lv_bindings/lvgl/src/extra/libs/sjpg/lv_sjpg.c
CC ../../lib/lv_bindings/lvgl/src/extra/libs/freetype/lv_freetype.c
CC ../../lib/lv_bindings/lvgl/src/extra/libs/png/lv_png.c
CC ../../lib/lv_bindings/lvgl/src/extra/libs/png/lodepng.c
CC ../../lib/lv_bindings/lvgl/src/extra/libs/qrcode/lv_qrcode.c
CC ../../lib/lv_bindings/lvgl/src/extra/libs/qrcode/qrcodegen.c
CC ../../lib/lv_bindings/lvgl/src/extra/libs/rlottie/lv_rlottie.c
CC ../../lib/lv_bindings/lvgl/src/extra/libs/fsdrv/lv_fs_stdio.c
CC ../../lib/lv_bindings/lvgl/src/extra/libs/fsdrv/lv_fs_posix.c
CC ../../lib/lv_bindings/lvgl/src/extra/libs/fsdrv/lv_fs_fatfs.c
CC ../../lib/lv_bindings/lvgl/src/extra/libs/fsdrv/lv_fs_win32.c
CC ../../lib/lv_bindings/lvgl/src/extra/libs/bmp/lv_bmp.c
CC ../../lib/lv_bindings/lvgl/src/extra/libs/gif/lv_gif.c
CC ../../lib/lv_bindings/lvgl/src/extra/libs/gif/gifdec.c
../../lib/lv_bindings/lvgl/src/extra/libs/gif/gifdec.c:96:9: error: variable 'gif' is used uninitialized whenever 'if' condition is true [-Werror,-Wsometimes-uninitialized]
if (!(fdsz & 0x80)) {
^~~~~~~~~~~~~~
../../lib/lv_bindings/lvgl/src/extra/libs/gif/gifdec.c:163:12: note: uninitialized use occurs here
return gif;
^~~
../../lib/lv_bindings/lvgl/src/extra/libs/gif/gifdec.c:96:5: note: remove the 'if' if its condition is always false
if (!(fdsz & 0x80)) {
^~~~~~~~~~~~~~~~~~~~~
../../lib/lv_bindings/lvgl/src/extra/libs/gif/gifdec.c:86:9: error: variable 'gif' is used uninitialized whenever 'if' condition is true [-Werror,-Wsometimes-uninitialized]
if (memcmp(sigver, "89a", 3) != 0) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../lib/lv_bindings/lvgl/src/extra/libs/gif/gifdec.c:163:12: note: uninitialized use occurs here
return gif;
^~~
../../lib/lv_bindings/lvgl/src/extra/libs/gif/gifdec.c:86:5: note: remove the 'if' if its condition is always false
if (memcmp(sigver, "89a", 3) != 0) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../lib/lv_bindings/lvgl/src/extra/libs/gif/gifdec.c:80:9: error: variable 'gif' is used uninitialized whenever 'if' condition is true [-Werror,-Wsometimes-uninitialized]
if (memcmp(sigver, "GIF", 3) != 0) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../lib/lv_bindings/lvgl/src/extra/libs/gif/gifdec.c:163:12: note: uninitialized use occurs here
return gif;
^~~
../../lib/lv_bindings/lvgl/src/extra/libs/gif/gifdec.c:80:5: note: remove the 'if' if its condition is always false
if (memcmp(sigver, "GIF", 3) != 0) {
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../lib/lv_bindings/lvgl/src/extra/libs/gif/gifdec.c:76:16: note: initialize the variable 'gif' to silence this warning
gd_GIF *gif;
^
= NULL
3 errors generated.
make: *** [build-standard/lib/lv_bindings/lvgl/src/extra/libs/gif/gifdec.o] Error 1
It seems that your compiler might be newer/more picky than expected. The warning there is probably valid, but you should be able to change -Werror to -Wno-errorhere to get past it.
@embeddedt@amirgon I fix it like this __attribute__((section(".text,\"ax\",@progbits # "))) ==> __attribute__((section("__TEXT,__text"))), it compiled, but i don’t know if any side effect in runtime!, any idea ?? I also try out your approach, but it doesn’t work fine also! !
many problems occur:
1.
>>> import display driver
Traceback (most recent call last):
File "<stdin>", line 1
SyntaxError: invalid syntax
>>> import display_driver
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "display_driver.py", line 1, in <module>
File "display_driver_utils.py", line 5, in <module>
File "lv_utils.py", line 45, in <module>
RuntimeError: Missing machine.Timer implementation!
No idea.
It’s not specific to lv_micropython, so it’s better to ask on the Micropython forum.
These are runtime problems, not related to the compile time problem on this thread.
I noticed that you opened another thread with the same problems, so let’s discuss it there.