Errors building LVGL micropython for Raspberry Pi pico (last step #6)

Hello everyone!))
I gave up and I’d like to ask help from the community here!
What I did:
I followed step by step by procedure from github:

  1. git clone GitHub - lvgl/lv_micropython: Micropython bindings to LVGL for Embedded devices, Unix and JavaScript
  2. cd lv_micropython
  3. git submodule update --init --recursive lib/lv_bindings
  4. make -C ports/rp2 BOARD=PICO submodules
  5. make -j -C mpy-cross
    6. make -j -C ports/rp2 BOARD=PICO USER_C_MODULES=…/…/lib/lv_bindings/bindings.cmake

I have already used 3 OS for build process ( gcc-arm-none-eabi and cmake have been installed before ):

  • UBUNTU on x86 PC
  • Windows 7 on x86 PC
  • Raspbian OS on the Raspberry Pi4
    I have always the same error on the last step #6 :

# make -j -C ports/rp2 BOARD=PICO USER_C_MODULES=../../lib/lv_bindings/bindings.cmake
make: Entering directory '/home/user/share/Done2/lv_micropython/ports/rp2'
[ -e build-PICO/CMakeCache.txt ] || cmake -S . -B build-PICO -DPICO_BUILD_DOCS=0 -DMICROPY_BOARD=PICO -DUSER_C_MODULES=../../lib/lv_bindings/bindings.cmake
make -s -C build-PICO
make[1]: Entering directory '/home/user/share/Done2/lv_micropython/ports/rp2/build-PICO'
make[1]: *** No targets specified and no makefile found.  Stop.
make[1]: Leaving directory '/home/user/share/Done2/lv_micropython/ports/rp2/build-PICO'
make: *** [Makefile:27: all] Error 2
make: Leaving directory '/home/user/share/Done2/lv_micropython/ports/rp2'

Under MS Visual studio I got some details:

CMakeFiles\qstr.i.last-417609e.bat ec9748db5a2ed06a
arm-none-eabi-gcc.exe: error: C:/TMP_/lv_micropython_all/lv_mcropython/extmod/machine_pulse.c: No such file or directory

I have this file (machine_pulse.c) and I have the file “machine_pulse.h” as well …
I didn’t change any file and didn’t add any driver for displays (I have plans to try with ILI9341 16/8 bit parallel interface and the SSD1963 8 bit parallel interface).

Any help would be appreciated!

how you are trying to build doesn’t look right…

the build command should be

git clone

cd lv_micropython

git submodule update --init --recursive lib/lv_bindings

make -C ports/rp2 submodules

sudo apt update

sudo apt install cmake gcc-arm-none-eabi libnewlib-arm-none-eabi build-essential

make -C mpy-cross

cd ports/rp2

make BOARD=PICO USER_C_MODULES="../../lib/lv_bindings/bindings.cmake"

where I am seeing an issue is in the last make command

Now if you have a failed build you MUST perform a clean

make BOARD=PICO USER_C_MODULES="../../lib/lv_bindings/bindings.cmake" clean

Add the double quotes around the path specified under USER_C_MODULES and also make sure that you only have a total of 4 periods and not 6 like what you are showing. so ../../ NOT .../.../

The additional commands are to install packages needed to compile properly.

1 Like

That is also assuming compiling under Ubuntu.

What I posted is confirmed to be working also.

Thank you for your reply!
I’m gonna to try to follow your step-by-step procedure of build and I’ll report about results here immediately.

Thank you so much! I have done with build process of the source “lv_micropython” successfully by your help!!!

[100%] Linking CXX executable firmware.elf
   text	   data	    bss	    dec	    hex	filename
 849856	    100	 204868	1054824	 101868	/home/user/lv_micropython/lv_micropython/ports/rp2/build-PICO/firmware.elf
[100%] Built target firmware

Now I can go ahead with the drivers for my displays (ILI9341 and SSD1963)! WIthout GUI both of them works properly.
I saw that you posted the driver for SSD1963.

no worries m8 that’s what we are here for.