rpcs3 icon indicating copy to clipboard operation
rpcs3 copied to clipboard

error: no viable conversion from returned value of type

Open rubin55 opened this issue 8 months ago • 3 comments

Quick summary

Arch Linux, Clang 19.1.7, compilation error (previously reported #17000 error seems to be fixed indeed).

Details

No response

Attach a log file

/tmp/makepkg.builddir/rpcs3-git/src/rpcs3/rpcs3/rpcs3qt/gs_frame.cpp:681:10: error: no viable conversion from returned value of type 'pair<typename __decay_and_strip<wl_display *&>::__type, typename __decay_and_strip<wl_surface *&>::__type>' (aka 'pair<wl_display *, wl_surface *>') to function return type 'display_handle_t' (aka 'variant<pair<_XDisplay *, unsigned long>>')
  681 |                 return std::make_pair(wl_dpy, wl_surf);
      |                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Attach capture files for visual issues

No response

System configuration

No response

Other details

No response

rubin55 avatar Apr 06 '25 21:04 rubin55

Same on my end. Something's wrong with the Wayland/x11 defines

Megamouse avatar Apr 06 '25 22:04 Megamouse

The problem is it's possible for HAVE_WAYLAND to be defined when VK_USE_PLATFORM_WAYLAND_KHR isn't.

https://github.com/RPCS3/rpcs3/blob/9b7d5cd1a9e56fe7ea9b89be887f4967465ff356/rpcs3/Emu/RSX/display.h#L24-L33

https://github.com/RPCS3/rpcs3/blob/9b7d5cd1a9e56fe7ea9b89be887f4967465ff356/rpcs3/rpcs3qt/gs_frame.cpp#L673-L684

Edit: Deleted potential workaround. It allowed build to succeed, but revealed another problem... Vulkan wasn't enabled... which would explain why VK_USE_PLATFORM_WAYLAND_KHR isn't set anymore.

xiota avatar Apr 10 '25 06:04 xiota

Found problem and working solution. The Vulkan library and headers are now in separate packages on Arch. Need to revise the PKGBUILD so vulkan-icd-loader is in depends and vulkan-headers is in makedepends.

xiota avatar Apr 10 '25 10:04 xiota

This should be fixed by #17120

Megamouse avatar Apr 29 '25 00:04 Megamouse