lvgl / lv_web_emscripten

LVGL ported to Emscripten to be converted to JavaScript
MIT License
73 stars 27 forks source link

It doesn't build with the latest emsdk #4

Closed w8jcik closed 4 years ago

w8jcik commented 4 years ago

Steps to reproduce

git clone https://github.com/emscripten-core/emsdk.git
(cd emsdk && ./emsdk install latest && ./emsdk activate latest)
source emsdk/emsdk_env.sh

git clone --recursive https://github.com/littlevgl/lv_sim_emscripten.git
(cd lv_sim_emscripten && make)
 LINK  lvgl.html
wasm-ld: error: duplicate symbol: monitor_init
>>> defined in lv_drivers/display/monitor.o
>>> defined in lv_drivers/display/monitor.o
...
wasm-ld: error: duplicate symbol: monitor_sdl_refr_core
>>> defined in lv_drivers/display/monitor.o
>>> defined in lv_drivers/display/monitor.o
shared:ERROR:...
...
make: *** [Makefile:89: lvgl.html] Error 1

It works when the older version of emsdk is selected

git clone https://github.com/emscripten-core/emsdk.git
(cd emsdk && ./emsdk install 1.38.48 && ./emsdk activate 1.38.48)
source emsdk/emsdk_env.sh

git clone --recursive https://github.com/littlevgl/lv_sim_emscripten.git
(cd lv_sim_emscripten && make)
embeddedt commented 4 years ago

It's good to hear that there are no runtime issues with the new LLVM backend.

I'm taking a look at this now; I should have a fix soon.

embeddedt commented 4 years ago

It was a pretty simple mistake. I'm not sure why the older Emscripten worked with it like this.

w8jcik commented 4 years ago

Great. Thank you for the fix.