Unable to get simulator running in Win7/Eclipse/MinGW

Description

I am unable to get the eclipse SDL simulator project running. I believe this is an issue with how I’ve installed the SDL library but I am unable to figure out how to get it going.

I have tried re-installing with mingw-w64-install.exe

I dropped the libs into the libs, SDL2 into include per the tutorial.

I am using Eclipse:
Eclipse IDE for C/C++ Developers
Version: 2019-09 R (4.13.0)
Build id: 20190917-1200

Info: Internal Builder is used for build
gcc -o pc_simulator “lv_drivers\display\R61581.o” “lv_drivers\display\SHARP_MIP.o” “lv_drivers\display\SSD1963.o” “lv_drivers\display\ST7565.o” “lv_drivers\display\UC1610.o” “lv_drivers\display\fbdev.o” “lv_drivers\display\monitor.o” “lv_drivers\indev\AD_touch.o” “lv_drivers\indev\FT5406EE8.o” “lv_drivers\indev\XPT2046.o” “lv_drivers\indev\evdev.o” “lv_drivers\indev\keyboard.o” “lv_drivers\indev\libinput.o” “lv_drivers\indev\mouse.o” “lv_drivers\indev\mousewheel.o” “lv_drivers\win_drv.o” “lv_examples\lv_apps\benchmark\benchmark.o” “lv_examples\lv_apps\benchmark\benchmark_bg.o” “lv_examples\lv_apps\demo\demo.o” “lv_examples\lv_apps\demo\img_bubble_pattern.o” “lv_examples\lv_apps\sysmon\sysmon.o” “lv_examples\lv_apps\terminal\terminal.o” “lv_examples\lv_apps\tpcal\tpcal.o” “lv_examples\lv_tests\lv_test_group\lv_test_group.o” “lv_examples\lv_tests\lv_test_misc\lv_test_task.o” “lv_examples\lv_tests\lv_test_obj\lv_test_obj.o” “lv_examples\lv_tests\lv_test_objx\lv_test_arc\lv_test_arc.o” “lv_examples\lv_tests\lv_test_objx\lv_test_bar\lv_test_bar.o” “lv_examples\lv_tests\lv_test_objx\lv_test_btn\lv_test_btn.o” “lv_examples\lv_tests\lv_test_objx\lv_test_btnm\lv_test_btnm.o” “lv_examples\lv_tests\lv_test_objx\lv_test_canvas\lv_test_canvas.o” “lv_examples\lv_tests\lv_test_objx\lv_test_cb\lv_test_cb.o” “lv_examples\lv_tests\lv_test_objx\lv_test_chart\lv_test_chart.o” “lv_examples\lv_tests\lv_test_objx\lv_test_cont\lv_test_cont.o” “lv_examples\lv_tests\lv_test_objx\lv_test_ddlist\lv_test_ddlist.o” “lv_examples\lv_tests\lv_test_objx\lv_test_gauge\lv_test_gauge.o” “lv_examples\lv_tests\lv_test_objx\lv_test_img\img_flower_icon.o” “lv_examples\lv_tests\lv_test_objx\lv_test_img\lv_test_img.o” “lv_examples\lv_tests\lv_test_objx\lv_test_imgbtn\imgbtn_img_1.o” “lv_examples\lv_tests\lv_test_objx\lv_test_imgbtn\imgbtn_img_2.o” “lv_examples\lv_tests\lv_test_objx\lv_test_imgbtn\imgbtn_img_3.o” “lv_examples\lv_tests\lv_test_objx\lv_test_imgbtn\imgbtn_img_4.o” “lv_examples\lv_tests\lv_test_objx\lv_test_imgbtn\lv_test_imgbtn.o” “lv_examples\lv_tests\lv_test_objx\lv_test_kb\lv_test_kb.o” “lv_examples\lv_tests\lv_test_objx\lv_test_label\lv_test_label.o” “lv_examples\lv_tests\lv_test_objx\lv_test_led\lv_test_led.o” “lv_examples\lv_tests\lv_test_objx\lv_test_line\lv_test_line.o” “lv_examples\lv_tests\lv_test_objx\lv_test_list\lv_test_list.o” “lv_examples\lv_tests\lv_test_objx\lv_test_lmeter\lv_test_lmeter.o” “lv_examples\lv_tests\lv_test_objx\lv_test_mbox\lv_test_mbox.o” “lv_examples\lv_tests\lv_test_objx\lv_test_page\lv_test_page.o” “lv_examples\lv_tests\lv_test_objx\lv_test_preload\lv_test_preload.o” “lv_examples\lv_tests\lv_test_objx\lv_test_roller\lv_test_roller.o” “lv_examples\lv_tests\lv_test_objx\lv_test_slider\lv_test_slider.o” “lv_examples\lv_tests\lv_test_objx\lv_test_sw\lv_test_sw.o” “lv_examples\lv_tests\lv_test_objx\lv_test_ta\lv_test_ta.o” “lv_examples\lv_tests\lv_test_objx\lv_test_table\lv_test_table.o” “lv_examples\lv_tests\lv_test_objx\lv_test_tabview\lv_test_tabview.o” “lv_examples\lv_tests\lv_test_objx\lv_test_tileview\lv_test_tileview.o” “lv_examples\lv_tests\lv_test_objx\lv_test_win\lv_test_win.o” “lv_examples\lv_tests\lv_test_stress\lv_test_stress.o” “lv_examples\lv_tests\lv_test_theme\lv_test_theme_1.o” “lv_examples\lv_tests\lv_test_theme\lv_test_theme_2.o” “lv_examples\lv_tutorial\10_keyboard\lv_tutorial_keyboard.o” “lv_examples\lv_tutorial\1_hello_world\lv_tutorial_hello_world.o” “lv_examples\lv_tutorial\2_objects\lv_tutorial_objects.o” “lv_examples\lv_tutorial\3_styles\lv_tutorial_styles.o” “lv_examples\lv_tutorial\4_themes\lv_tutorial_themes.o” “lv_examples\lv_tutorial\5_antialiasing\apple_icon_alpha.o” “lv_examples\lv_tutorial\5_antialiasing\apple_icon_chroma.o” “lv_examples\lv_tutorial\5_antialiasing\lv_tutorial_antialiasing.o” “lv_examples\lv_tutorial\6_images\flower_icon_alpha.o” “lv_examples\lv_tutorial\6_images\lv_tutorial_images.o” “lv_examples\lv_tutorial\6_images\red_flower.o” “lv_examples\lv_tutorial\6_images\red_rose_16.o” “lv_examples\lv_tutorial\7_fonts\arial_20.o” “lv_examples\lv_tutorial\7_fonts\lv_tutorial_fonts.o” “lv_examples\lv_tutorial\8_animations\lv_tutorial_animations.o” “lv_examples\lv_tutorial\9_responsive\lv_tutorial_responsive.o” “lvgl\porting\lv_port_disp_template.o” “lvgl\porting\lv_port_fs_template.o” “lvgl\porting\lv_port_indev_template.o” “lvgl\src\lv_core\lv_disp.o” “lvgl\src\lv_core\lv_group.o” “lvgl\src\lv_core\lv_indev.o” “lvgl\src\lv_core\lv_obj.o” “lvgl\src\lv_core\lv_refr.o” “lvgl\src\lv_core\lv_style.o” “lvgl\src\lv_draw\lv_draw.o” “lvgl\src\lv_draw\lv_draw_arc.o” “lvgl\src\lv_draw\lv_draw_basic.o” “lvgl\src\lv_draw\lv_draw_img.o” “lvgl\src\lv_draw\lv_draw_label.o” “lvgl\src\lv_draw\lv_draw_line.o” “lvgl\src\lv_draw\lv_draw_rect.o” “lvgl\src\lv_draw\lv_draw_triangle.o” “lvgl\src\lv_draw\lv_img_cache.o” “lvgl\src\lv_draw\lv_img_decoder.o” “lvgl\src\lv_font\lv_font.o” “lvgl\src\lv_font\lv_font_fmt_txt.o” “lvgl\src\lv_font\lv_font_roboto_12.o” “lvgl\src\lv_font\lv_font_roboto_16.o” “lvgl\src\lv_font\lv_font_roboto_22.o” “lvgl\src\lv_font\lv_font_roboto_28.o” “lvgl\src\lv_font\lv_font_unscii_8.o” “lvgl\src\lv_hal\lv_hal_disp.o” “lvgl\src\lv_hal\lv_hal_indev.o” “lvgl\src\lv_hal\lv_hal_tick.o” “lvgl\src\lv_misc\lv_anim.o” “lvgl\src\lv_misc\lv_area.o” “lvgl\src\lv_misc\lv_async.o” “lvgl\src\lv_misc\lv_circ.o” “lvgl\src\lv_misc\lv_color.o” “lvgl\src\lv_misc\lv_fs.o” “lvgl\src\lv_misc\lv_gc.o” “lvgl\src\lv_misc\lv_ll.o” “lvgl\src\lv_misc\lv_log.o” “lvgl\src\lv_misc\lv_math.o” “lvgl\src\lv_misc\lv_mem.o” “lvgl\src\lv_misc\lv_task.o” “lvgl\src\lv_misc\lv_templ.o” “lvgl\src\lv_misc\lv_txt.o” “lvgl\src\lv_misc\lv_utils.o” “lvgl\src\lv_objx\lv_arc.o” “lvgl\src\lv_objx\lv_bar.o” “lvgl\src\lv_objx\lv_btn.o” “lvgl\src\lv_objx\lv_btnm.o” “lvgl\src\lv_objx\lv_calendar.o” “lvgl\src\lv_objx\lv_canvas.o” “lvgl\src\lv_objx\lv_cb.o” “lvgl\src\lv_objx\lv_chart.o” “lvgl\src\lv_objx\lv_cont.o” “lvgl\src\lv_objx\lv_ddlist.o” “lvgl\src\lv_objx\lv_gauge.o” “lvgl\src\lv_objx\lv_img.o” “lvgl\src\lv_objx\lv_imgbtn.o” “lvgl\src\lv_objx\lv_kb.o” “lvgl\src\lv_objx\lv_label.o” “lvgl\src\lv_objx\lv_led.o” “lvgl\src\lv_objx\lv_line.o” “lvgl\src\lv_objx\lv_list.o” “lvgl\src\lv_objx\lv_lmeter.o” “lvgl\src\lv_objx\lv_mbox.o” “lvgl\src\lv_objx\lv_objx_templ.o” “lvgl\src\lv_objx\lv_page.o” “lvgl\src\lv_objx\lv_preload.o” “lvgl\src\lv_objx\lv_roller.o” “lvgl\src\lv_objx\lv_slider.o” “lvgl\src\lv_objx\lv_spinbox.o” “lvgl\src\lv_objx\lv_sw.o” “lvgl\src\lv_objx\lv_ta.o” “lvgl\src\lv_objx\lv_table.o” “lvgl\src\lv_objx\lv_tabview.o” “lvgl\src\lv_objx\lv_tileview.o” “lvgl\src\lv_objx\lv_win.o” “lvgl\src\lv_themes\lv_theme.o” “lvgl\src\lv_themes\lv_theme_alien.o” “lvgl\src\lv_themes\lv_theme_default.o” “lvgl\src\lv_themes\lv_theme_material.o” “lvgl\src\lv_themes\lv_theme_mono.o” “lvgl\src\lv_themes\lv_theme_nemo.o” “lvgl\src\lv_themes\lv_theme_night.o” “lvgl\src\lv_themes\lv_theme_templ.o” “lvgl\src\lv_themes\lv_theme_zen.o” main.o mouse_cursor_icon.o -lSDL2main -lSDL2 -lm
lv_drivers\display\monitor.o: In function monitor_init': ./lv_drivers/display/monitor.c:117: undefined reference toSDL_CreateThread’
…/lv_drivers/display/monitor.c:280: undefined reference to SDL_DestroyTexture' ./lv_drivers/display/monitor.c:281: undefined reference toSDL_DestroyRenderer’
./lv_drivers/display/monitor.c:282: undefined reference to SDL_DestroyWindow' ./lv_drivers/display/monitor.c:291: undefined reference toSDL_Quit’

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

Windows 7/Simulator

What do you want to achieve?

Basic running demo to begin working with

What have you tried so far?

Followed the tutorial for copying the SDL2 library, although the library I got from SDL was 2.0.10 not 2.0.05 if that makes a difference. I have verified MinGW is in the system path and the libraries within Eclipse show in the correct order (mingw32, SDL2main, SDL2). I’ve changed the builder to internal CDT builder as well.

I am not a C/C++ expert so assume I made all the mistakes somehow.

Code to reproduce

lv_sim_eclipse_sdl github repository

Do you insists on the Eclipse simulator?
Codeblocks and Visual studio project work out of the box on Windows:
See https://github.com/littlevgl/lvgl/#quick-start-in-a-simulator

1 Like

If it’s anything like the Visual Studio simulator project, you’ll probably need to clone the repository rather than downloading the compressed files and then pasting in the missing contents. Worth a try, perhaps.