Update from 9.1 to 9.2 produces an error (

Description

I have a project which builds and runs just fine with 9.1.
since I would like to use lv_grad_conical_init(); and it seems not to exist in 9.1 I am trying to upgrade to 9.2.

Whenever I install 9.2 (or 9.22), the project doesn’t compile because:

.pio/libdeps/esp32dev/lvgl/src/lv_api_map_v8.h:155:41: error: 'lv_display_refr_timer' was not declared in this scope

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

ESP32/CYD,VScode/Platformio/Arduino

What LVGL version are you using?

9.1 → 9.2

What do you want to achieve?

get 9.2 running

What have you tried so far?

  • copying lv_api_map files from 9.1 to 9.2 installation,
  • reinstalling,
  • various syntaxes in platformio.ini (with/without “^”, “~”)
  • versions 9.2, 9.2.2

Dunno what else to try… :confused: Appreciate any hint.

Hi @pflosch ,

I am not particularly familiar with Arduino but in my bare-metal C projects I found I needed to add an external declaration for this function like this:

extern void lv_display_refr_timer(lv_timer_t * tmr);

I would try adding this line somewhere near the top of your sketch file, it may work.

Kind Regards,

Pete

Thanks @pete-pjb.

Added it to the declarations, but it still doesn’t work.

Now it complains for every line where I call “lv_display_refr_timer(NULL);”

undefined reference to `lv_display_refr_timer(lv_timer_t*)'

I never used “extern” so far, but find this weird, because if I right click on that declaration and and select “go to definition” is opens lv_refr.c and shows the definition.
So I guess that’s a platformio or arduino thing happening here… :confused:

I’ll try to dig further, still would be grateful for any hint.

Oh I got it working.
It was issue #7925 (github) making me those problems.
Changing the 2 files according to #7925 did the trick :slight_smile:

1 Like