cococry / lyssa

Aestethic, minimal, suckless music player

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

vec2 and vec4 issue

prljav opened this issue · comments

First off, prob related to #5, i do have all the packages installed that were talked about in #5

 % make rebuild
make clean
make[1]: Entering directory '/home/xxxx/Documents/lyssa'
rm -rf ./bin 
rm -rf ./vendor/leif/lib 
make[1]: Leaving directory '/home/xxxx/Documents/lyssa'
make leif
make[1]: Entering directory '/home/xxxx/Documents/lyssa'
make -C ./vendor/leif/
make[2]: Entering directory '/home/xxxx/Documents/lyssa/vendor/leif'
mkdir lib
gcc `pkg-config --cflags glfw3 cglm` -Ivendor/glad/include -Ivendor/stb_image/ -Ivendor/stb_truetype -Ivendor/stb_image_resize -DLF_GLFW -O3 -ffast-math  -c leif.c -o lib/leif.o
gcc -c vendor/glad/src/glad.c -o lib/glad.o
ar cr lib/libleif.a lib/*.o
make[2]: Leaving directory '/home/xxxx/Documents/lyssa/vendor/leif'
make[1]: Leaving directory '/home/xxxx/Documents/lyssa'
make build
make[1]: Entering directory '/home/xxxx/Documents/lyssa'
mkdir bin
[INFO]: Building Lyssa.
g++ -O3 -ffast-math -DGLFW_INCLUDE_NONE -std=c++17 src/*.cpp -o bin/lyssa -Ivendor/miniaudio -Ivendor/leif/include -Ivendor/leif/vendor/glad/include -Ivendor/stb_image_write -lleif -lclipboard -Lvendor/leif/lib -lglfw -lm -Lvendor/miniaudio/lib -lminiaudio -lxcb `pkg-config --cflags --libs taglib` 
src/infoCard.cpp: In member function ‘void InfoCardHandler::addCard(const std::string&, LfColor, LfColor)’:
src/infoCard.cpp:17:51: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
   17 |         .width = lf_text_dimension(title.c_str()).x + _cardPadding + 50.0f,
      |                                                   ^
src/infoCard.cpp: In member function ‘void InfoCardHandler::render()’:
src/infoCard.cpp:43:74: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
   43 |       props.margin_top = (32 - lf_text_dimension(infoCard.title.c_str()).y) / 2.0f + lf_get_theme().image_props.margin_top;
      |                                                                          ^
src/lyssa.cpp: In function ‘void renderHomepage()’:
src/lyssa.cpp:486:49: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
  486 |       float textWidth = lf_text_dimension(text).x;
      |                                                 ^
src/lyssa.cpp:552:32: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
  552 |       if(lf_get_ptr_x() + size.x >= state.win->getWidth() - margin) {
      |                                ^
src/lyssa.cpp:553:53: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘y’
  553 |         lf_set_ptr_y_absolute(lf_get_ptr_y() + size.y + margin);
      |                                                     ^
src/lyssa.cpp:568:34: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
  568 |             .size = (vec2s){size.x - innerMargin * 2.0f, size.x - innerMargin}};
      |                                  ^
src/lyssa.cpp:568:63: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
  568 |             .size = (vec2s){size.x - innerMargin * 2.0f, size.x - innerMargin}};
      |                                                               ^
src/lyssa.cpp:577:59: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
  577 |         float containerAspect = (float)thumbnailAABB.size.x / (float)thumbnailAABB.size.y;
      |                                                           ^
src/lyssa.cpp:577:89: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
  577 |         float containerAspect = (float)thumbnailAABB.size.x / (float)thumbnailAABB.size.y;
      |                                                                                         ^
src/lyssa.cpp:580:51: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
  580 |           scaleFactor = (float)thumbnailAABB.size.x / (float)thumbnail.width;
      |                                                   ^
src/lyssa.cpp:582:51: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
  582 |           scaleFactor = (float)thumbnailAABB.size.y / (float)thumbnail.height;
      |                                                   ^
src/lyssa.cpp:588:33: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
  588 |             (thumbnailAABB.size.y - thumbnailHeight) / 2.0f}, LF_WHITE,
      |                                 ^
src/lyssa.cpp:590:93: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
  590 |             LF_NO_COLOR, 0.0f, ((thumbnailHeight + cornerRadius * 4.0f > thumbnailAABB.size.y) ? cornerRadius * 2.0f : 0.0f));
      |                                                                                             ^
src/lyssa.cpp:593:52: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
  593 |       lf_set_ptr_y_absolute(lf_get_ptr_y() + (size.x + innerMargin));
      |                                                    ^
src/lyssa.cpp:598:49: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
  598 |         lf_set_cull_end_x(lf_get_ptr_x() + size.x - innerMargin);
      |                                                 ^
src/lyssa.cpp:601:35: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
  601 |             lf_get_ptr_x() + size.x - innerMargin * 2.0f, (vec2s){-1, lf_get_ptr_y() + lf_get_theme().font.font_size * 2.0f},
      |                                   ^
src/lyssa.cpp:612:49: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
  612 |         lf_set_cull_end_x(lf_get_ptr_x() + size.x - innerMargin);
      |                                                 ^
src/lyssa.cpp:615:35: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
  615 |             lf_get_ptr_x() + size.x - innerMargin * 2.0f, (vec2s){-1, lf_get_ptr_y() + lf_get_theme().font.font_size * 2.0f},
      |                                   ^
src/lyssa.cpp:637:44: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
  637 |         lf_set_ptr_y_absolute(containerPos.y + size.y - (buttonSize.y + innerMargin * 2.0f));
      |                                            ^
src/lyssa.cpp:637:53: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘y’
  637 |         lf_set_ptr_y_absolute(containerPos.y + size.y - (buttonSize.y + innerMargin * 2.0f));
      |                                                     ^
src/lyssa.cpp:637:69: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
  637 |         lf_set_ptr_y_absolute(containerPos.y + size.y - (buttonSize.y + innerMargin * 2.0f));
      |                                                                     ^
In file included from src/config.hpp:4,
                 from src/lyssa.cpp:1:
src/lyssa.cpp:641:45: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
  641 |               .width = (uint32_t)buttonSize.x, .height = (uint32_t)buttonSize.y}));
      |                                             ^
vendor/leif/include/leif/leif.h:274:51: note: in definition of macro ‘lf_image_button’
  274 | #define lf_image_button(img) _lf_image_button_loc(img, __FILE__, __LINE__)
      |                                                   ^~~
src/lyssa.cpp:641:79: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
  641 |               .width = (uint32_t)buttonSize.x, .height = (uint32_t)buttonSize.y}));
      |                                                                               ^
vendor/leif/include/leif/leif.h:274:51: note: in definition of macro ‘lf_image_button’
  274 | #define lf_image_button(img) _lf_image_button_loc(img, __FILE__, __LINE__)
      |                                                   ^~~
src/lyssa.cpp:651:45: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
  651 |               .width = (uint32_t)buttonSize.x, .height = (uint32_t)buttonSize.y}));
      |                                             ^
vendor/leif/include/leif/leif.h:274:51: note: in definition of macro ‘lf_image_button’
  274 | #define lf_image_button(img) _lf_image_button_loc(img, __FILE__, __LINE__)
      |                                                   ^~~
src/lyssa.cpp:651:79: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
  651 |               .width = (uint32_t)buttonSize.x, .height = (uint32_t)buttonSize.y}));
      |                                                                               ^
vendor/leif/include/leif/leif.h:274:51: note: in definition of macro ‘lf_image_button’
  274 | #define lf_image_button(img) _lf_image_button_loc(img, __FILE__, __LINE__)
      |                                                   ^~~
src/lyssa.cpp:686:42: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
  686 |       lf_set_ptr_x_absolute(containerPos.x + size.x + margin);
      |                                          ^
src/lyssa.cpp:686:51: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
  686 |       lf_set_ptr_x_absolute(containerPos.x + size.x + margin);
      |                                                   ^
src/lyssa.cpp:687:42: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
  687 |       lf_set_ptr_y_absolute(containerPos.y);
      |                                          ^
src/lyssa.cpp:689:49: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘y’
  689 |     lf_set_ptr_y_absolute(lf_get_ptr_y() + size.y + margin);
      |                                                 ^
src/lyssa.cpp: In function ‘void renderDashboardNav()’:
src/lyssa.cpp:759:85: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
  759 |     props.margin_top = imgProps.margin_top + (imgSize- lf_text_dimension(titles[i]).y) / 2.0f;
      |                                                                                     ^
In file included from src/lyssa.cpp:9:
src/lyssa.cpp: In function ‘void renderCreatePlaylist(std::function<void()>, std::function<void()>, std::function<void()>)’:
src/lyssa.cpp:864:58: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
  864 |       float thumbnailHeight = MIN(thumbnailContainerSize.y / aspect, thumbnailContainerSize.y);
      |                                                          ^
src/global.hpp:25:19: note: in definition of macro ‘MIN’
   25 | #define MIN(a, b) a < b ? a : b
      |                   ^
src/lyssa.cpp:864:93: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
  864 |       float thumbnailHeight = MIN(thumbnailContainerSize.y / aspect, thumbnailContainerSize.y);
      |                                                                                             ^
src/global.hpp:25:23: note: in definition of macro ‘MIN’
   25 | #define MIN(a, b) a < b ? a : b
      |                       ^
src/lyssa.cpp:864:58: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
  864 |       float thumbnailHeight = MIN(thumbnailContainerSize.y / aspect, thumbnailContainerSize.y);
      |                                                          ^
src/global.hpp:25:27: note: in definition of macro ‘MIN’
   25 | #define MIN(a, b) a < b ? a : b
      |                           ^
src/lyssa.cpp:864:93: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
  864 |       float thumbnailHeight = MIN(thumbnailContainerSize.y / aspect, thumbnailContainerSize.y);
      |                                                                                             ^
src/global.hpp:25:31: note: in definition of macro ‘MIN’
   25 | #define MIN(a, b) a < b ? a : b
      |                               ^
src/lyssa.cpp:882:71: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
  882 |       lf_image_render((vec2s){lf_get_ptr_x() - thumbnailContainerSize.x - props.margin_left, lf_get_ptr_y() +
      |                                                                       ^
src/lyssa.cpp:883:35: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
  883 |           (thumbnailContainerSize.y - thumbnailHeight) / 2.0f + props.margin_top}, LF_WHITE,
      |                                   ^
src/lyssa.cpp:885:44: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
  885 |           (uint32_t)thumbnailContainerSize.x, .height = (uint32_t)thumbnailHeight}, LF_NO_COLOR, 0.0f, 4.0f);
      |                                            ^
src/lyssa.cpp: In lambda function:
src/lyssa.cpp:1000:41: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
 1000 |             .width = (uint32_t)iconSize.x,
      |                                         ^
src/lyssa.cpp:1001:42: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘y’
 1001 |             .height = (uint32_t)iconSize.y
      |                                          ^
src/lyssa.cpp: In function ‘void renderDownloadPlaylist()’:
src/lyssa.cpp:1286:107: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
 1286 |       lf_progress_bar_int(downloadedFileCount, 0, (float)state.downloadPlaylistFileCount, progressBarSize.x, progressBarSize.y);
      |                                                                                                           ^
vendor/leif/include/leif/leif.h:307:99: note: in definition of macro ‘lf_progress_bar_int’
  307 | #define lf_progress_bar_int(val, min, max, width, height) _lf_progress_bar_int_loc(val, min, max, width, height, __FILE__, __LINE__)
      |                                                                                                   ^~~~~
src/lyssa.cpp:1286:126: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘y’
 1286 |       lf_progress_bar_int(downloadedFileCount, 0, (float)state.downloadPlaylistFileCount, progressBarSize.x, progressBarSize.y);
      |                                                                                                                              ^
vendor/leif/include/leif/leif.h:307:106: note: in definition of macro ‘lf_progress_bar_int’
  307 | #define lf_progress_bar_int(val, min, max, width, height) _lf_progress_bar_int_loc(val, min, max, width, height, __FILE__, __LINE__)
      |                                                                                                          ^~~~~~
src/lyssa.cpp: In function ‘void renderOnPlaylist()’:
src/lyssa.cpp:1355:91: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 1355 |     bool onTitleArea = lf_hovered(LF_PTR, (vec2s){(float)state.win->getWidth(), titleSize.y});
      |                                                                                           ^
src/lyssa.cpp:1387:49: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 1387 |       float textWidth = lf_text_dimension(text).x;
      |                                                 ^
src/lyssa.cpp:1458:47: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 1458 |     float textWidth = lf_text_dimension(text).x;
      |                                               ^
src/lyssa.cpp:1489:95: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
 1489 |             lf_set_ptr_x((state.win->getWidth() - state.sideNavigationWidth - progressBarSize.x - textDim.x * 2.0f) / 2.0f - DIV_START_X);
      |                                                                                               ^
src/lyssa.cpp:1489:107: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 1489 |             lf_set_ptr_x((state.win->getWidth() - state.sideNavigationWidth - progressBarSize.x - textDim.x * 2.0f) / 2.0f - DIV_START_X);
      |                                                                                                           ^
src/lyssa.cpp:1492:46: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 1492 |             props.margin_top = 15 - (textDim.y - progressBarSize.y) / 2.0f;
      |                                              ^
src/lyssa.cpp:1492:66: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘y’
 1492 |             props.margin_top = 15 - (textDim.y - progressBarSize.y) / 2.0f;
      |                                                                  ^
src/lyssa.cpp:1501:109: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
 1501 |         lf_progress_bar_int(downloadedFileCount, 0, (float)state.downloadPlaylistFileCount, progressBarSize.x, progressBarSize.y);
      |                                                                                                             ^
vendor/leif/include/leif/leif.h:307:99: note: in definition of macro ‘lf_progress_bar_int’
  307 | #define lf_progress_bar_int(val, min, max, width, height) _lf_progress_bar_int_loc(val, min, max, width, height, __FILE__, __LINE__)
      |                                                                                                   ^~~~~
src/lyssa.cpp:1501:128: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘y’
 1501 |         lf_progress_bar_int(downloadedFileCount, 0, (float)state.downloadPlaylistFileCount, progressBarSize.x, progressBarSize.y);
      |                                                                                                                                ^
vendor/leif/include/leif/leif.h:307:106: note: in definition of macro ‘lf_progress_bar_int’
  307 | #define lf_progress_bar_int(val, min, max, width, height) _lf_progress_bar_int_loc(val, min, max, width, height, __FILE__, __LINE__)
      |                                                                                                          ^~~~~~
src/lyssa.cpp:1506:91: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 1506 |             static float totalFileCountHeight = lf_text_dimension(totalFileCount.c_str()).y;
      |                                                                                           ^
src/lyssa.cpp:1510:77: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘y’
 1510 |             props.margin_top = 15 - (totalFileCountHeight - progressBarSize.y) / 2.0f;
      |                                                                             ^
src/lyssa.cpp:1527:49: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 1527 |       float textWidth = lf_text_dimension(text).x;
      |                                                 ^
src/lyssa.cpp:1579:49: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 1579 |       float textWidth = lf_text_dimension(text).x;
      |                                                 ^
src/lyssa.cpp:1596:55: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 1596 |       float subtextWidth = lf_text_dimension(subtext).x;
      |                                                       ^
src/lyssa.cpp:1629:105: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 1629 |       lf_set_ptr_x((state.win->getWidth() - state.sideNavigationWidth) - (lf_text_dimension("Duration").x) -  DIV_START_X * 2 - lf_get_theme().text_props.margin_left);
      |                                                                                                         ^
src/lyssa.cpp:1664:102: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 1664 |         file.renderPosY = (lf_get_ptr_y() - currentPlaylist.scroll) - lf_get_current_div().aabb.size.y;
      |                                                                                                      ^
src/lyssa.cpp:1668:107: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 1668 |             .size = (vec2s){(float)state.win->getWidth() - DIV_START_X * 2, (float)thumbnailContainerSize.y + marginBottomThumbnail}
      |                                                                                                           ^
src/lyssa.cpp:1690:98: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 1690 |           vec2s indexPos = (vec2s){lf_get_ptr_x() + 10, lf_get_ptr_y() + (thumbnailContainerSize.y - lf_text_dimension(indexStr.c_str()).y) / 2.0f};
      |                                                                                                  ^
src/lyssa.cpp:1690:138: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 1690 |           vec2s indexPos = (vec2s){lf_get_ptr_x() + 10, lf_get_ptr_y() + (thumbnailContainerSize.y - lf_text_dimension(indexStr.c_str()).y) / 2.0f};
      |                                                                                                                                          ^
src/lyssa.cpp:1692:66: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 1692 |             bool hoveredPlayButton = lf_hovered((vec2s){indexPos.x - 5, indexPos.y},
      |                                                                  ^
src/lyssa.cpp:1692:82: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 1692 |             bool hoveredPlayButton = lf_hovered((vec2s){indexPos.x - 5, indexPos.y},
      |                                                                                  ^
src/lyssa.cpp:1706:46: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 1706 |             lf_image_render((vec2s){indexPos.x - 2.5f, indexPos.y}, LF_WHITE,
      |                                              ^
src/lyssa.cpp:1706:65: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 1706 |             lf_image_render((vec2s){indexPos.x - 2.5f, indexPos.y}, LF_WHITE,
      |                                                                 ^
src/lyssa.cpp:1741:53: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 1741 |           lf_set_line_height(thumbnailContainerSize.y + marginBottomThumbnail);
      |                                                     ^
src/lyssa.cpp:1767:54: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 1767 |           props.margin_top = (thumbnailContainerSize.y - lf_text_dimension(std::to_string(file.releaseYear).c_str()).y) / 2.0f;
      |                                                      ^
src/lyssa.cpp:1767:118: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 1767 |           props.margin_top = (thumbnailContainerSize.y - lf_text_dimension(std::to_string(file.releaseYear).c_str()).y) / 2.0f;
      |                                                                                                                      ^
src/lyssa.cpp:1810:109: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 1810 |           lf_set_ptr_x((state.win->getWidth() - state.sideNavigationWidth) - (lf_text_dimension("Duration").x) -  DIV_START_X * 2 - lf_get_theme().text_props.margin_left);
      |                                                                                                             ^
src/lyssa.cpp:1813:54: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 1813 |           props.margin_top = (thumbnailContainerSize.y - lf_text_dimension(durationText.c_str()).y) / 2.0f;
      |                                                      ^
src/lyssa.cpp:1813:98: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 1813 |           props.margin_top = (thumbnailContainerSize.y - lf_text_dimension(durationText.c_str()).y) / 2.0f;
      |                                                                                                  ^
src/lyssa.cpp:1826:58: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 1826 |           lf_rect_render(startPtr, (vec2s){fileAABB.size.x - state.sideNavigationWidth - DIV_START_X * 2.0f , 1}, LYSSA_PLAYLIST_COLOR, LF_NO_COLOR, 0.0f, 0.0f);
      |                                                          ^
src/lyssa.cpp:1842:64: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 1842 |             lf_text_dimension_wide(draggingTrackTitle.c_str()).x + 15.0f, 50.0f}), false);
      |                                                                ^
vendor/leif/include/leif/leif.h:255:28: note: in definition of macro ‘lf_div_begin’
  255 |     _lf_div_begin_loc(pos, size, scrollable, &scroll, &scroll_velocity, __FILE__, __LINE__);\
      |                            ^~~~
src/lyssa.cpp: In function ‘void renderOnTrack()’:
src/lyssa.cpp:1878:3: error: ‘vec2s’ has no non-static data member named ‘x’
 1878 |   };
      |   ^
src/lyssa.cpp:1880:38: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 1880 |   lf_set_ptr_x_absolute(containerPos.x);
      |                                      ^
src/lyssa.cpp:1881:38: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 1881 |   lf_set_ptr_y_absolute(containerPos.y);
      |                                      ^
src/lyssa.cpp:1930:64: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 1930 |     float textWidth = lf_text_dimension_wide(filename.c_str()).x;
      |                                                                ^
src/lyssa.cpp:1932:42: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 1932 |       lf_set_ptr_x_absolute(containerPos.x);
      |                                          ^
src/lyssa.cpp:1933:38: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 1933 |       lf_set_cull_end_x(containerPos.x + containerSize);
      |                                      ^
src/lyssa.cpp:1948:62: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 1948 |     float textWidth = lf_text_dimension_wide(artist.c_str()).x;
      |                                                              ^
src/lyssa.cpp:1976:66: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 1976 |     props.margin_left = -lf_text_dimension(durationMins.c_str()).x;
      |                                                                  ^
src/lyssa.cpp: In function ‘void renderTrackFullscreen()’:
src/lyssa.cpp:2117:68: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2117 |   lf_rect_render((vec2s){0.0f, 0.0f}, (vec2s){(float)containerSize.x, (float)containerSize.y}, LF_BLACK, LF_NO_COLOR, 0.0f, 0.0f);
      |                                                                    ^
src/lyssa.cpp:2117:92: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 2117 |   lf_rect_render((vec2s){0.0f, 0.0f}, (vec2s){(float)containerSize.x, (float)containerSize.y}, LF_BLACK, LF_NO_COLOR, 0.0f, 0.0f);
      |                                                                                            ^
src/lyssa.cpp:2121:48: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2121 |   float containerAspect = (float)containerSize.x / (float)containerSize.y;
      |                                                ^
src/lyssa.cpp:2121:73: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 2121 |   float containerAspect = (float)containerSize.x / (float)containerSize.y;
      |                                                                         ^
src/lyssa.cpp:2124:40: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2124 |     scaleFactor = (float)containerSize.x / (float)thumbnail.width;
      |                                        ^
src/lyssa.cpp:2126:40: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 2126 |     scaleFactor = (float)containerSize.y / (float)thumbnail.height;
      |                                        ^
src/lyssa.cpp:2132:42: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2132 |   lf_image_render((vec2s){(containerSize.x - thumbnailWidth) / 2.0f, (containerSize.y - thumbnailHeight) / 2.0f},
      |                                          ^
src/lyssa.cpp:2132:85: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 2132 |   lf_image_render((vec2s){(containerSize.x - thumbnailWidth) / 2.0f, (containerSize.y - thumbnailHeight) / 2.0f},
      |                                                                                     ^
src/lyssa.cpp: In lambda function:
src/lyssa.cpp:2300:39: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
 2300 |           .width = (uint32_t)iconSize.x,
      |                                       ^
src/lyssa.cpp:2301:40: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘y’
 2301 |           .height = (uint32_t)iconSize.y
      |                                        ^
src/lyssa.cpp: In function ‘void renderSearchPlaylist()’:
src/lyssa.cpp:2430:61: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2430 |     const vec2s size = (vec2s){PLAYLIST_FILE_THUMBNAIL_SIZE.x * 3.0f, PLAYLIST_FILE_THUMBNAIL_SIZE.y * 3.0f + 50.0f};
      |                                                             ^
src/lyssa.cpp:2430:100: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 2430 |     const vec2s size = (vec2s){PLAYLIST_FILE_THUMBNAIL_SIZE.x * 3.0f, PLAYLIST_FILE_THUMBNAIL_SIZE.y * 3.0f + 50.0f};
      |                                                                                                    ^
src/lyssa.cpp:2437:83: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
 2437 |       LfClickableItemState thumbnailState = renderSoundFileThumbnail((vec2s){size.x, size.x}, res, nullptr, true, 4.0f);
      |                                                                                   ^
src/lyssa.cpp:2437:91: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
 2437 |       LfClickableItemState thumbnailState = renderSoundFileThumbnail((vec2s){size.x, size.x}, res, nullptr, true, 4.0f);
      |                                                                                           ^
src/lyssa.cpp:2448:58: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
 2448 |       lf_text_render_wchar((vec2s){lf_get_ptr_x() - size.x, lf_get_ptr_y() + size.x + (margin / 3.0f)}, res.title.c_str(),
      |                                                          ^
src/lyssa.cpp:2448:83: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
 2448 |       lf_text_render_wchar((vec2s){lf_get_ptr_x() - size.x, lf_get_ptr_y() + size.x + (margin / 3.0f)}, res.title.c_str(),
      |                                                                                   ^
src/lyssa.cpp:2451:58: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
 2451 |       lf_text_render_wchar((vec2s){lf_get_ptr_x() - size.x, lf_get_ptr_y() + size.x + state.h6Font.font_size + (margin / 3.0f)}, res.artist.c_str(),
      |                                                          ^
src/lyssa.cpp:2451:83: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
 2451 |       lf_text_render_wchar((vec2s){lf_get_ptr_x() - size.x, lf_get_ptr_y() + size.x + state.h6Font.font_size + (margin / 3.0f)}, res.artist.c_str(),
      |                                                                                   ^
src/lyssa.cpp:2456:32: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
 2456 |       if(lf_get_ptr_x() + size.x >= state.win->getWidth()) {
      |                                ^
src/lyssa.cpp:2458:53: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘y’
 2458 |         lf_set_ptr_y_absolute(lf_get_ptr_y() + size.y + margin);
      |                                                     ^
src/lyssa.cpp:2473:108: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2473 |       lf_set_ptr_x_absolute(((state.win->getWidth() + state.sideNavigationWidth) - lf_text_dimension(text).x) / 2.0f);
      |                                                                                                            ^
src/lyssa.cpp:2480:109: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2480 |     lf_set_ptr_x_absolute(((state.win->getWidth() + state.sideNavigationWidth) - lf_text_dimension(subtext).x) / 2.0f);
      |                                                                                                             ^
src/lyssa.cpp: In function ‘void renderFileDialogue(std::function<void(std::filesystem::__cxx11::directory_entry)>, std::function<void()>, std::function<void()>, std::function<void(std::filesystem::__cxx11::directory_entry, bool)>, std::function<bool(std::filesystem::__cxx11::directory_entry, bool)>, const std::vector<std::filesystem::__cxx11::directory_entry>&, const std::vector<std::__cxx11::basic_string<char> >&, bool)’:
src/lyssa.cpp:2555:177: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2555 |   lf_div_begin(((vec2s){lf_get_ptr_x() + DIV_START_X - lf_get_theme().button_props.margin_left, lf_get_ptr_y() + DIV_START_Y}), (((vec2s){(float)lf_get_current_div().aabb.size.x - (DIV_START_X * 4),
      |                                                                                                                                                                                 ^
vendor/leif/include/leif/leif.h:255:28: note: in definition of macro ‘lf_div_begin’
  255 |     _lf_div_begin_loc(pos, size, scrollable, &scroll, &scroll_velocity, __FILE__, __LINE__);\
      |                            ^~~~
src/lyssa.cpp:2556:49: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 2556 |           (float)lf_get_current_div().aabb.size.y - DIV_START_Y * 2 - lf_get_ptr_y() - (BACK_BUTTON_HEIGHT + BACK_BUTTON_MARGIN_BOTTOM) - divMarginButton})), true);
      |                                                 ^
vendor/leif/include/leif/leif.h:255:28: note: in definition of macro ‘lf_div_begin’
  255 |     _lf_div_begin_loc(pos, size, scrollable, &scroll, &scroll_velocity, __FILE__, __LINE__);\
      |                            ^~~~
src/lyssa.cpp:2577:52: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2577 |       .pos = (vec2s){lf_get_current_div().aabb.pos.x, lf_get_ptr_y()},
      |                                                    ^
src/lyssa.cpp:2578:56: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2578 |         .size = (vec2s){lf_get_current_div().aabb.size.x, iconSize.y}
      |                                                        ^
src/lyssa.cpp:2578:68: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘y’
 2578 |         .size = (vec2s){lf_get_current_div().aabb.size.x, iconSize.y}
      |                                                                    ^
src/lyssa.cpp:2583:50: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2583 |       lf_rect_render(aabb.pos, (vec2s){aabb.size.x, aabb.size.y + 5.0f}, (LfColor){100, 100, 100, 255}, LF_NO_COLOR, 0.0f, 3.0f);
      |                                                  ^
src/lyssa.cpp:2583:63: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 2583 |       lf_rect_render(aabb.pos, (vec2s){aabb.size.x, aabb.size.y + 5.0f}, (LfColor){100, 100, 100, 255}, LF_NO_COLOR, 0.0f, 3.0f);
      |                                                               ^
src/lyssa.cpp:2596:39: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
 2596 |           .width = (uint32_t)iconSize.x,
      |                                       ^
src/lyssa.cpp:2597:40: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘y’
 2597 |           .height = (uint32_t)iconSize.y
      |                                        ^
src/lyssa.cpp:2610:34: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘y’
 2610 |     props.margin_top = (iconSize.y - lf_text_dimension_wide(entry.path().filename().wstring().c_str()).y) / 2.0f;
      |                                  ^
src/lyssa.cpp:2610:104: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 2610 |     props.margin_top = (iconSize.y - lf_text_dimension_wide(entry.path().filename().wstring().c_str()).y) / 2.0f;
      |                                                                                                        ^
src/lyssa.cpp: In function ‘void renderTrackDisplay()’:
src/lyssa.cpp:2648:89: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2648 |     lf_text_dimension(formatDurationToMins(state.soundHandler.lengthInSeconds).c_str()).x + margin;
      |                                                                                         ^
src/lyssa.cpp:2651:35: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘y’
 2651 |       .y = thumbnailContainerSize.y + padding * 2.0f
      |                                   ^
src/lyssa.cpp:2652:3: error: ‘vec2s’ has no non-static data member named ‘x’
 2652 |   };
      |   ^
src/lyssa.cpp:2656:53: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 2656 |       (float)state.win->getHeight() - containerSize.y - margin
      |                                                     ^
src/lyssa.cpp:2663:40: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2663 |     lf_set_ptr_x_absolute(containerPos.x + padding);
      |                                        ^
src/lyssa.cpp:2664:40: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 2664 |     lf_set_ptr_y_absolute(containerPos.y + padding);
      |                                        ^
src/lyssa.cpp:2669:70: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 2669 |     float textLabelHeight = lf_text_dimension_wide(filename.c_str()).y + lf_text_dimension_wide(artist.c_str()).y + 5.0f;
      |                                                                      ^
src/lyssa.cpp:2669:113: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 2669 |     float textLabelHeight = lf_text_dimension_wide(filename.c_str()).y + lf_text_dimension_wide(artist.c_str()).y + 5.0f;
      |                                                                                                                 ^
src/lyssa.cpp:2671:36: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2671 |     lf_set_cull_end_x(containerPos.x + containerSize.x - padding);
      |                                    ^
src/lyssa.cpp:2671:54: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2671 |     lf_set_cull_end_x(containerPos.x + containerSize.x - padding);
      |                                                      ^
src/lyssa.cpp:2673:30: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2673 |         (vec2s){containerPos.x + padding + thumbnailContainerSize.x + marginThumbnail,
      |                              ^
src/lyssa.cpp:2673:67: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
 2673 |         (vec2s){containerPos.x + padding + thumbnailContainerSize.x + marginThumbnail,
      |                                                                   ^
src/lyssa.cpp:2674:22: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 2674 |         containerPos.y + padding + (thumbnailContainerSize.y -  textLabelHeight) / 2.0f},
      |                      ^
src/lyssa.cpp:2674:60: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘y’
 2674 |         containerPos.y + padding + (thumbnailContainerSize.y -  textLabelHeight) / 2.0f},
      |                                                            ^
src/lyssa.cpp:2678:30: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2678 |         (vec2s){containerPos.x + padding + thumbnailContainerSize.x + marginThumbnail,
      |                              ^
src/lyssa.cpp:2678:67: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
 2678 |         (vec2s){containerPos.x + padding + thumbnailContainerSize.x + marginThumbnail,
      |                                                                   ^
src/lyssa.cpp:2679:22: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 2679 |         containerPos.y + padding + (thumbnailContainerSize.y - textLabelHeight) / 2.0f + lf_text_dimension_wide(artist.c_str()).y + 5.0f},
      |                      ^
src/lyssa.cpp:2679:60: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘y’
 2679 |         containerPos.y + padding + (thumbnailContainerSize.y - textLabelHeight) / 2.0f + lf_text_dimension_wide(artist.c_str()).y + 5.0f},
      |                                                            ^
src/lyssa.cpp:2679:129: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 2679 |         containerPos.y + padding + (thumbnailContainerSize.y - textLabelHeight) / 2.0f + lf_text_dimension_wide(artist.c_str()).y + 5.0f},
      |                                                                                                                                 ^
src/lyssa.cpp: In function ‘void renderTrackProgress(bool)’:
src/lyssa.cpp:2696:134: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2696 |     lf_set_ptr_x_absolute((state.win->getWidth() - state.trackProgressSlider.width) / 2.0f - lf_text_dimension(durationMins.c_str()).x - 15);
      |                                                                                                                                      ^
src/lyssa.cpp:2699:65: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2699 |     props.margin_left = lf_text_dimension(durationMins.c_str()).x + 15;
      |                                                                 ^
src/lyssa.cpp:2712:66: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2712 |     props.margin_left = -lf_text_dimension(durationMins.c_str()).x - 7.5f;
      |                                                                  ^
src/lyssa.cpp:2751:38: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2751 |     float controlWidth = (iconSizeSm.x) * 4 + iconSize.x + (iconMargin * 4);
      |                                      ^
src/lyssa.cpp:2751:56: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2751 |     float controlWidth = (iconSizeSm.x) * 4 + iconSize.x + (iconMargin * 4);
      |                                                        ^
src/lyssa.cpp:2756:43: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2756 |     props.margin_top = -10.0f + (iconSize.x - iconSizeSm.x) / 2.0f - 5;
      |                                           ^
src/lyssa.cpp:2756:58: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2756 |     props.margin_top = -10.0f + (iconSize.x - iconSizeSm.x) / 2.0f - 5;
      |                                                          ^
src/lyssa.cpp:2767:45: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2767 |               .width = (uint32_t)iconSizeSm.x, .height = (uint32_t)iconSizeSm.y})) == LF_CLICKED) {
      |                                             ^
vendor/leif/include/leif/leif.h:274:51: note: in definition of macro ‘lf_image_button’
  274 | #define lf_image_button(img) _lf_image_button_loc(img, __FILE__, __LINE__)
      |                                                   ^~~
src/lyssa.cpp:2767:79: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 2767 |               .width = (uint32_t)iconSizeSm.x, .height = (uint32_t)iconSizeSm.y})) == LF_CLICKED) {
      |                                                                               ^
vendor/leif/include/leif/leif.h:274:51: note: in definition of macro ‘lf_image_button’
  274 | #define lf_image_button(img) _lf_image_button_loc(img, __FILE__, __LINE__)
      |                                                   ^~~
src/lyssa.cpp:2771:128: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2771 |     if(lf_image_button(((LfTexture){.id = state.icons[dark ? "skip_down_dark" : "skip_down"].id, .width = (uint32_t)iconSizeSm.x, .height = (uint32_t)iconSizeSm.y})) == LF_CLICKED) {
      |                                                                                                                                ^
vendor/leif/include/leif/leif.h:274:51: note: in definition of macro ‘lf_image_button’
  274 | #define lf_image_button(img) _lf_image_button_loc(img, __FILE__, __LINE__)
      |                                                   ^~~
src/lyssa.cpp:2771:162: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 2771 |     if(lf_image_button(((LfTexture){.id = state.icons[dark ? "skip_down_dark" : "skip_down"].id, .width = (uint32_t)iconSizeSm.x, .height = (uint32_t)iconSizeSm.y})) == LF_CLICKED) {
      |                                                                                                                                                                  ^
vendor/leif/include/leif/leif.h:274:51: note: in definition of macro ‘lf_image_button’
  274 | #define lf_image_button(img) _lf_image_button_loc(img, __FILE__, __LINE__)
      |                                                   ^~~
src/lyssa.cpp:2780:43: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2780 |               .width = (uint32_t)iconSize.x, .height = (uint32_t)iconSize.y})) == LF_CLICKED) {
      |                                           ^
vendor/leif/include/leif/leif.h:274:51: note: in definition of macro ‘lf_image_button’
  274 | #define lf_image_button(img) _lf_image_button_loc(img, __FILE__, __LINE__)
      |                                                   ^~~
src/lyssa.cpp:2780:75: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 2780 |               .width = (uint32_t)iconSize.x, .height = (uint32_t)iconSize.y})) == LF_CLICKED) {
      |                                                                           ^
vendor/leif/include/leif/leif.h:274:51: note: in definition of macro ‘lf_image_button’
  274 | #define lf_image_button(img) _lf_image_button_loc(img, __FILE__, __LINE__)
      |                                                   ^~~
src/lyssa.cpp:2789:124: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2789 |     if(lf_image_button(((LfTexture){.id = state.icons[dark ? "skip_up_dark" : "skip_up"].id, .width = (uint32_t)iconSizeSm.x, .height = (uint32_t)iconSizeSm.y})) == LF_CLICKED) {
      |                                                                                                                            ^
vendor/leif/include/leif/leif.h:274:51: note: in definition of macro ‘lf_image_button’
  274 | #define lf_image_button(img) _lf_image_button_loc(img, __FILE__, __LINE__)
      |                                                   ^~~
src/lyssa.cpp:2789:158: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 2789 |     if(lf_image_button(((LfTexture){.id = state.icons[dark ? "skip_up_dark" : "skip_up"].id, .width = (uint32_t)iconSizeSm.x, .height = (uint32_t)iconSizeSm.y})) == LF_CLICKED) {
      |                                                                                                                                                              ^
vendor/leif/include/leif/leif.h:274:51: note: in definition of macro ‘lf_image_button’
  274 | #define lf_image_button(img) _lf_image_button_loc(img, __FILE__, __LINE__)
      |                                                   ^~~
src/lyssa.cpp:2795:43: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 2795 |             .width = (uint32_t)iconSizeSm.x, .height = (uint32_t)iconSizeSm.y})) == LF_CLICKED) {
      |                                           ^
vendor/leif/include/leif/leif.h:274:51: note: in definition of macro ‘lf_image_button’
  274 | #define lf_image_button(img) _lf_image_button_loc(img, __FILE__, __LINE__)
      |                                                   ^~~
src/lyssa.cpp:2795:77: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 2795 |             .width = (uint32_t)iconSizeSm.x, .height = (uint32_t)iconSizeSm.y})) == LF_CLICKED) {
      |                                                                             ^
vendor/leif/include/leif/leif.h:274:51: note: in definition of macro ‘lf_image_button’
  274 | #define lf_image_button(img) _lf_image_button_loc(img, __FILE__, __LINE__)
      |                                                   ^~~
src/lyssa.cpp: In function ‘void renderTrackVolumeControl()’:
src/lyssa.cpp:2849:48: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘y’
 2849 |         (float)state.win->getWidth(), iconSize.y + props.margin_top + props.margin_bottom});
      |                                                ^
src/lyssa.cpp:2851:112: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
 2851 |     LfClickableItemState soundButton = lf_image_button(((LfTexture){.id = icon.id, .width = (uint32_t)iconSize.x, .height = (uint32_t)iconSize.y}));
      |                                                                                                                ^
vendor/leif/include/leif/leif.h:274:51: note: in definition of macro ‘lf_image_button’
  274 | #define lf_image_button(img) _lf_image_button_loc(img, __FILE__, __LINE__)
      |                                                   ^~~
src/lyssa.cpp:2851:144: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘y’
 2851 |     LfClickableItemState soundButton = lf_image_button(((LfTexture){.id = icon.id, .width = (uint32_t)iconSize.x, .height = (uint32_t)iconSize.y}));
      |                                                                                                                                                ^
vendor/leif/include/leif/leif.h:274:51: note: in definition of macro ‘lf_image_button’
  274 | #define lf_image_button(img) _lf_image_button_loc(img, __FILE__, __LINE__)
      |                                                   ^~~
src/lyssa.cpp:2890:69: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 2890 |       props.margin_top -= lf_text_dimension(volumeSS.str().c_str()).y;
      |                                                                     ^
src/lyssa.cpp: In function ‘LfClickableItemState renderSoundFileThumbnail(vec2s, SoundFile&, const std::function<void()>&, bool, float)’:
src/lyssa.cpp:3306:50: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 3306 |   float thumbnailHeight = thumbnailContainerSize.y / aspect;
      |                                                  ^
src/lyssa.cpp:3331:67: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 3331 |   lf_image_render((vec2s){lf_get_ptr_x() - thumbnailContainerSize.x, lf_get_ptr_y() +
      |                                                                   ^
src/lyssa.cpp:3332:31: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 3332 |       (thumbnailContainerSize.y - thumbnailHeight) / 2.0f}, LF_WHITE,
      |                               ^
src/lyssa.cpp:3334:40: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 3334 |       (uint32_t)thumbnailContainerSize.x, .height = (uint32_t)thumbnailHeight}, LF_NO_COLOR, 0.0f, 0.0f);
      |                                        ^
src/lyssa.cpp: In function ‘bool renderMenuBarElement(const std::string&, uint32_t)’:
src/lyssa.cpp:3344:37: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 3344 |     lf_text_dimension(text.c_str()).x +
      |                                     ^
src/lyssa.cpp:3369:98: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 3369 |     text_props.margin_top = icon_props.margin_top + ((iconSize - lf_text_dimension(text.c_str()).y) / 2.0f);
      |                                                                                                  ^
src/lyssa.cpp: In function ‘int main(int, char**)’:
src/lyssa.cpp:3428:29: error: ‘vec4s’ {aka ‘union vec4s’} has no member named ‘r’
 3428 |     glClearColor(clearColor.r, clearColor.g, clearColor.b, clearColor.a);
      |                             ^
src/lyssa.cpp:3428:43: error: ‘vec4s’ {aka ‘union vec4s’} has no member named ‘g’
 3428 |     glClearColor(clearColor.r, clearColor.g, clearColor.b, clearColor.a);
      |                                           ^
src/lyssa.cpp:3428:57: error: ‘vec4s’ {aka ‘union vec4s’} has no member named ‘b’
 3428 |     glClearColor(clearColor.r, clearColor.g, clearColor.b, clearColor.a);
      |                                                         ^
src/lyssa.cpp:3428:71: error: ‘vec4s’ {aka ‘union vec4s’} has no member named ‘a’
 3428 |     glClearColor(clearColor.r, clearColor.g, clearColor.b, clearColor.a);
      |                                                                       ^
src/lyssa.cpp:3462:29: error: ‘vec4s’ {aka ‘union vec4s’} has no member named ‘r’
 3462 |     glClearColor(clearColor.r, clearColor.g, clearColor.b, clearColor.a);
      |                             ^
src/lyssa.cpp:3462:43: error: ‘vec4s’ {aka ‘union vec4s’} has no member named ‘g’
 3462 |     glClearColor(clearColor.r, clearColor.g, clearColor.b, clearColor.a);
      |                                           ^
src/lyssa.cpp:3462:57: error: ‘vec4s’ {aka ‘union vec4s’} has no member named ‘b’
 3462 |     glClearColor(clearColor.r, clearColor.g, clearColor.b, clearColor.a);
      |                                                         ^
src/lyssa.cpp:3462:71: error: ‘vec4s’ {aka ‘union vec4s’} has no member named ‘a’
 3462 |     glClearColor(clearColor.r, clearColor.g, clearColor.b, clearColor.a);
      |                                                                       ^
src/lyssa.cpp:3470:77: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
 3470 |     lf_div_begin(divStart, ((vec2s){(float)state.win->getWidth() - divStart.x, (float)state.win->getHeight() - divStart.y}), true);
      |                                                                             ^
vendor/leif/include/leif/leif.h:255:28: note: in definition of macro ‘lf_div_begin’
  255 |     _lf_div_begin_loc(pos, size, scrollable, &scroll, &scroll_velocity, __FILE__, __LINE__);\
      |                            ^~~~
src/lyssa.cpp:3470:121: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
 3470 |     lf_div_begin(divStart, ((vec2s){(float)state.win->getWidth() - divStart.x, (float)state.win->getHeight() - divStart.y}), true);
      |                                                                                                                         ^
vendor/leif/include/leif/leif.h:255:28: note: in definition of macro ‘lf_div_begin’
  255 |     _lf_div_begin_loc(pos, size, scrollable, &scroll, &scroll_velocity, __FILE__, __LINE__);\
      |                            ^~~~
In file included from src/popups.hpp:4,
                 from src/popups.cpp:1:
src/popups.cpp: In member function ‘virtual void EditPlaylistPopup::render()’:
src/popups.cpp:46:60: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
   46 |   lf_div_begin(((vec2s){(state.win->getWidth() - popupSize.x) / 2.0f, (state.win->getHeight() - popupSize.y) / 2.0f}), popupSize, false);
      |                                                            ^
vendor/leif/include/leif/leif.h:255:23: note: in definition of macro ‘lf_div_begin’
  255 |     _lf_div_begin_loc(pos, size, scrollable, &scroll, &scroll_velocity, __FILE__, __LINE__);\
      |                       ^~~
src/popups.cpp:46:107: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘y’
   46 |   lf_div_begin(((vec2s){(state.win->getWidth() - popupSize.x) / 2.0f, (state.win->getHeight() - popupSize.y) / 2.0f}), popupSize, false);
      |                                                                                                           ^
vendor/leif/include/leif/leif.h:255:23: note: in definition of macro ‘lf_div_begin’
  255 |     _lf_div_begin_loc(pos, size, scrollable, &scroll, &scroll_velocity, __FILE__, __LINE__);\
      |                       ^~~
src/popups.cpp:91:74: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
   91 |     lf_input_text_inl_ex(nameBuf, INPUT_BUFFER_SIZE, (int32_t)(popupSize.x - 50), "");
      |                                                                          ^
vendor/leif/include/leif/leif.h:335:18: note: in definition of macro ‘lf_input_text_inl_ex’
  335 |         .width = input_width,                                                           \
      |                  ^~~~~~~~~~~
src/popups.cpp:112:74: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
  112 |     lf_input_text_inl_ex(descBuf, INPUT_BUFFER_SIZE, (int32_t)(popupSize.x - 50), "");
      |                                                                          ^
vendor/leif/include/leif/leif.h:335:18: note: in definition of macro ‘lf_input_text_inl_ex’
  335 |         .width = input_width,                                                           \
      |                  ^~~~~~~~~~~
src/popups.cpp: In member function ‘virtual void PlaylistFileDialoguePopup::render()’:
src/popups.cpp:154:13: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
  154 |   this->pos.x = MIN(this->pos.x, state.win->getWidth() - popupSize.x - 15.0f);
      |             ^
In file included from src/popups.cpp:3:
src/popups.cpp:154:31: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
  154 |   this->pos.x = MIN(this->pos.x, state.win->getWidth() - popupSize.x - 15.0f);
      |                               ^
src/global.hpp:25:19: note: in definition of macro ‘MIN’
   25 | #define MIN(a, b) a < b ? a : b
      |                   ^
src/popups.cpp:154:68: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
  154 |   this->pos.x = MIN(this->pos.x, state.win->getWidth() - popupSize.x - 15.0f);
      |                                                                    ^
src/global.hpp:25:23: note: in definition of macro ‘MIN’
   25 | #define MIN(a, b) a < b ? a : b
      |                       ^
src/popups.cpp:154:31: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
  154 |   this->pos.x = MIN(this->pos.x, state.win->getWidth() - popupSize.x - 15.0f);
      |                               ^
src/global.hpp:25:27: note: in definition of macro ‘MIN’
   25 | #define MIN(a, b) a < b ? a : b
      |                           ^
src/popups.cpp:154:68: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
  154 |   this->pos.x = MIN(this->pos.x, state.win->getWidth() - popupSize.x - 15.0f);
      |                                                                    ^
src/global.hpp:25:31: note: in definition of macro ‘MIN’
   25 | #define MIN(a, b) a < b ? a : b
      |                               ^
src/popups.cpp:155:13: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
  155 |   this->pos.y = MIN(this->pos.y, state.win->getHeight() - popupSize.y - 15.0f);
      |             ^
src/popups.cpp:155:31: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
  155 |   this->pos.y = MIN(this->pos.y, state.win->getHeight() - popupSize.y - 15.0f);
      |                               ^
src/global.hpp:25:19: note: in definition of macro ‘MIN’
   25 | #define MIN(a, b) a < b ? a : b
      |                   ^
src/popups.cpp:155:69: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘y’
  155 |   this->pos.y = MIN(this->pos.y, state.win->getHeight() - popupSize.y - 15.0f);
      |                                                                     ^
src/global.hpp:25:23: note: in definition of macro ‘MIN’
   25 | #define MIN(a, b) a < b ? a : b
      |                       ^
src/popups.cpp:155:31: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
  155 |   this->pos.y = MIN(this->pos.y, state.win->getHeight() - popupSize.y - 15.0f);
      |                               ^
src/global.hpp:25:27: note: in definition of macro ‘MIN’
   25 | #define MIN(a, b) a < b ? a : b
      |                           ^
src/popups.cpp:155:69: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘y’
  155 |   this->pos.y = MIN(this->pos.y, state.win->getHeight() - popupSize.y - 15.0f);
      |                                                                     ^
src/global.hpp:25:31: note: in definition of macro ‘MIN’
   25 | #define MIN(a, b) a < b ? a : b
      |                               ^
src/popups.cpp: In member function ‘virtual void TwoChoicePopup::render()’:
src/popups.cpp:391:60: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘x’
  391 |   lf_div_begin(((vec2s){(state.win->getWidth() - popupSize.x) / 2.0f, (state.win->getHeight() - popupSize.y) / 2.0f}), popupSize, false);
      |                                                            ^
vendor/leif/include/leif/leif.h:255:23: note: in definition of macro ‘lf_div_begin’
  255 |     _lf_div_begin_loc(pos, size, scrollable, &scroll, &scroll_velocity, __FILE__, __LINE__);\
      |                       ^~~
src/popups.cpp:391:107: error: ‘const vec2s’ {aka ‘const union vec2s’} has no member named ‘y’
  391 |   lf_div_begin(((vec2s){(state.win->getWidth() - popupSize.x) / 2.0f, (state.win->getHeight() - popupSize.y) / 2.0f}), popupSize, false);
      |                                                                                                           ^
vendor/leif/include/leif/leif.h:255:23: note: in definition of macro ‘lf_div_begin’
  255 |     _lf_div_begin_loc(pos, size, scrollable, &scroll, &scroll_velocity, __FILE__, __LINE__);\
      |                       ^~~
src/popups.cpp:421:47: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
  421 |     float textWidth = lf_text_dimension(text).x;
      |                                               ^
src/popups.cpp:422:50: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
  422 |     lf_set_ptr_x((lf_get_current_div().aabb.size.x - textWidth) / 2.0f);
      |                                                  ^
src/popups.cpp:434:57: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
  434 |     float halfDivWidth = lf_get_current_div().aabb.size.x / 2.0f -
      |                                                         ^
src/soundTagParser.cpp: In function ‘LfTexture SoundTagParser::getSoundThubmnail(const std::string&, vec2s)’:
src/soundTagParser.cpp:47:24: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
   47 |         if(size_factor.x == -1 || size_factor.y == -1)
      |                        ^
src/soundTagParser.cpp:47:47: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
   47 |         if(size_factor.x == -1 || size_factor.y == -1)
      |                                               ^
src/soundTagParser.cpp:50:143: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
   50 |             tex = lf_load_texture_from_memory_resized_factor(imageData.data(), (int)imageData.size(), true, LF_TEX_FILTER_LINEAR, size_factor.x, size_factor.y);
      |                                                                                                                                               ^
src/soundTagParser.cpp:50:158: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
   50 |             tex = lf_load_texture_from_memory_resized_factor(imageData.data(), (int)imageData.size(), true, LF_TEX_FILTER_LINEAR, size_factor.x, size_factor.y);
      |                                                                                                                                                              ^
src/soundTagParser.cpp: In function ‘TextureData SoundTagParser::getSoundThubmnailData(const std::string&, vec2s)’:
src/soundTagParser.cpp:82:24: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
   82 |         if(size_factor.x == -1 || size_factor.y == -1) {
      |                        ^
src/soundTagParser.cpp:82:47: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
   82 |         if(size_factor.x == -1 || size_factor.y == -1) {
      |                                               ^
src/soundTagParser.cpp:86:107: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘x’
   86 |                 (int32_t*)&retData.width, (int32_t*)&retData.height, &retData.channels, true, size_factor.x, size_factor.y);
      |                                                                                                           ^
src/soundTagParser.cpp:86:122: error: ‘vec2s’ {aka ‘union vec2s’} has no member named ‘y’
   86 |                 (int32_t*)&retData.width, (int32_t*)&retData.height, &retData.channels, true, size_factor.x, size_factor.y);
      |                                                                                                                          ^
make[1]: *** [Makefile:27: build] Error 1
make[1]: Leaving directory '/home/xxxx/Documents/lyssa'
make: *** [Makefile:42: rebuild] Error 2

I had the same issue on ubuntu 23. I built cglm from source, which fixed the issue for me

yes, you need to build cglm from source

yes, you need to build cglm from source

thanks.