Hi!
I'm trying to run "Simulator > C" in GUI Guider 1.5.0 at Ubuntu 22.04 LTS. It's not working: "java run failed" is presented.
I'm using the GUI Guider project from example Coffee Machine for Smart HMI kit (i.MX RT117H).
GitHub: https://github.com/NXP/mcu-smhmi/archive/refs/heads/master.zip
Inside GUI Guider (Information window) log:
preparing widgets, please wait...
Cleaning Generate image files......
Cleaning Generate screen files......
Converting fonts......
Running UIT To Generate Code
Uit 3.0: Start to generate C code for UI
main_imgbtn_home(warning): No pressed image
main_imgbtn_home(warning): No disabled image
main_imgbtn_home(warning): No checked_released image
main_imgbtn_home(warning): No checked_pressed image
main_imgbtn_home(warning): No checked_disabled image
home_img_cameraPreview(error): No image
home_imgbtn_unregister(warning): No checked_released image
home_imgbtn_unregister(warning): No checked_pressed image
home_imgbtn_unregister(warning): No checked_disabled image
finished_animimg_coffee_type(error): No image list
standby_imgbtn_home(warning): No checked_released image
standby_imgbtn_home(warning): No checked_pressed image
standby_imgbtn_home(warning): No checked_disabled image
standby_animimg_screensaver(error): No image list
Uit 3.0: Generate C code for main
Uit 3.0: Generate C code for home_img_cameraPreview
Uit 3.0: Generate C code for home_imgbtn_size_medium
Uit 3.0: Generate C code for home_label_algoinfo
Uit 3.0: Generate C code for finished_label_coffee_strength
Uit 3.0: Generate C code for standby_animimg_screensaver
Uit 3.0: Generate C code for standby_cont_help
Uit 3.0: Generate C code for standby_label_select_coffee
Uit 3.0: Generate C code for screen_font_holder_label_simsun_20
Uit 3.0: Generate C code for screen_font_holder_ta_montserratmedium_20
color depth: 16
color depth: 16
/opt/Gui-Guider/environment/tools/img-converter/linux/img-converter -p /home/rafael/company/project/workspace/mcu-smhmi/coffee_machine/gui_guider/import/image/Americano_Selected_Black.png -n images/_Americano_Selected_Black_120x120 -w 120 -h 120 -f true-color -d 16
color depth: 16
Outside GUI Guider (terminal, I runned /usr/bin/Gui-Guider to get that) log:
rafael@rafael-dell:~$ /usr/bin/Gui-Guider
11:52:45.532 › Welcome to use GUI Guider......
11:52:45.540 › crash reporter location: /home/rafael/.config/gui-guider/Crashpad
[25810:0301/115248.850041:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 1 times!
[25810:0301/115303.837831:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 2 times!
[25810:0301/115305.508834:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 3 times!
11:53:17.241 › Convert font to C file......
11:53:19.881 › Generating Code......
About JAVA:
rafael@rafael-dell:~$ java --version openjdk 11.0.22 2024-01-16 OpenJDK Runtime Environment (build 11.0.22+7-post-Ubuntu-0ubuntu222.04.1) OpenJDK 64-Bit Server VM (build 11.0.22+7-post-Ubuntu-0ubuntu222.04.1, mixed mode, sharing) rafael@rafael-dell:~$ javac --version javac 11.0.22 rafael@rafael-dell:~$ echo $JAVA_HOME /usr/lib/jvm/java-11-openjdk-amd64
Please, someone has any idea about how to resolve this?
Hi, @Alex_Wang ! Thank you very much for your attention.
About image, I checked here and found an error on the GUI Guider project. The "Unregister.png" file was written "unregister.png" in some places. Since Linux is case sensitive and Windows is not, this explains why the same project works on Windows and not on Linux.
Now the compilation was succeded, but the Linker was not.
See the error log:
Linking simulator /usr/bin/ld: build/object/generated/custom.o: in function `gui_set_brewing_animation': custom.c:(.text+0x119d): undefined reference to `lv_animimg_set_exec_cb' /usr/bin/ld: build/object/generated/custom.o: in function `gui_set_brewing': custom.c:(.text+0x1e8b): undefined reference to `lv_animimg_set_exec_cb' collect2: error: ld returned 1 exit status make: *** [Makefile:113: default] Error 1
See the warning showed (this can help):
/home/rafael/r/f/workspace/mcu-smhmi/coffee_machine/gui_guider/lvgl-simulator/../lvgl/src/extra/widgets/animimg/lv_animimg.h:72:54: note: expected ‘const void **’ but argument is of type ‘lv_img_dsc_t **’ 72 | void lv_animimg_set_src(lv_obj_t * img, const void * dsc[], uint8_t num); | ~~~~~~~~~~~~~^~~~~
How to resolve this?
Hi. Doing other tests, I saw that the Elevator example also presents the same problem, but in the Home Panel it works. Any idea? I need it to work in the Coffee Machine example.
Hi, @Rafael_Noronha
I am very sorry to reply you so long. After our internal team checked the project, we found that the coffee machine project can only be run directly on the development board, and does not support the use of emulators to run.
Best regards, Alex
Hi, @Rafael_Noronha
This coffee machine project is directly run on the development board, I have checked this project, which contains the camera image acquisition, voice Settings and other controls, does not support the use of simulators to run.
You can refer to the following links:Getting Started with the SLN-TLHMI-IOT | NXP 半导体
Hope this helps you.
Best regards, Alex
Hi, @Rafael_Noronha
According to the error, there is an image that is not checked. Is the image displayed normally on every screen in your project?
I will confirm whether the project is normal as soon as possible. thank you.
Best regards, Alex