Compile lv_micropython (v8) for Windows


To be able to do rapid prototyping I would like to compile the lv_micropython repository for Windows.
I’m running into many issues during this process. Also Edgeline, seems to contain a LVGL 7 version of Micropython binary.

What MCU/Processor/Board and compiler are you using?


What do you want to achieve?

I want to have a Micropython with LVGL V8 binary to do prototyping.

What have you tried so far?

I have tried compiling on Windows (mingw) and Linux, both without success.

After resolving the requirements with regards to external libraries (i.e. SDL2), I get loads of compilation errors, which differ between Linux and Windows.

The first obvious error seems to be in the mpconfigport.h for the windows port.
lv_micropython/mpconfigport.h at master · lvgl/lv_micropython (

There is this line, which has an unknown variable/define:

//use large block for GC to increase speed of allocate, but consume more memory

BYTES_PER_WORD is unknow/undefined.

Has anyone managed to compile LVGL v8 + Micropython?

As far as I know, the Windows port in lv_micropython is not configured to work with LVGL; it’s just inherited from upstream. In general I believe @amirgon recommends using the Unix port in a VM or WSL for development.

I am not sure exactly where Edgeline gets its Micropython binary from; I suspect it’s a closed-source fork with additional features for Edgeline integration.

Another note: I believe the use of v7 in Edgeline was just for stability during development, and the official release will be using v8.

1 Like

The unix port is the supported one.
But at least once, a year ago, someone tried and succeeded building and running lv_micropython on Window with mingw:

This was long ago and we don’t have any CI to test it, so I won’t be surprised if it’s broken now.
Everyone are simply developing on Linux these days (or a Linux VM).

Another interesting option is to use GitPod.
It is pre-configured with the Linux port and you can do almost everything there (build, run, interact with the LVGL GUI, use VSCode to edit the files, commit, push etc.) Everything is online so you only need a web browser!

1 Like

Thanks for the pointers guys. The Windows port is broken, I can confirm.
The unix port seems like the easiest solution here, that will be absolutely fine.
GitPod, looks pretty neat as well.

We have started a discussion regarding the Windows port issues - if anyone is interested in participating/contributing: