microsoft / wslg

Enabling the Windows Subsystem for Linux to include support for Wayland and X server related scenarios
MIT License
10.1k stars 304 forks source link

Add 32-bit shared library support #1199

Open GXTX opened 7 months ago

GXTX commented 7 months ago

Is your feature request related to a problem:

32-bit Linux applications are not GPU accelerated.

Describe the solution you'd like:

Providing a 32-bit shared library alongside the 64-bit one would solve this issue.

Describe alternatives you've considered:

There is no work-around for this issue.

Additional context:

We can see from Ubuntu's debian/rules that it's explicitly disabled for the i386 builds.

        # WSL supports only amd64 and arm64
        ifneq (,$(filter amd64 arm64,$(DEB_HOST_ARCH)))
                GALLIUM_DRIVERS += d3d12
        endif

and further inspection this appears accurate.

root@-:~# ls /usr/lib/i386-linux-gnu/dri/
crocus_dri.so  kms_swrast_dri.so     r300_dri.so        radeonsi_dri.so        virtio_gpu_dri.so        zink_dri.so
i915_dri.so    nouveau_dri.so        r600_dri.so        radeonsi_drv_video.so  virtio_gpu_drv_video.so
iris_dri.so    nouveau_drv_video.so  r600_drv_video.so  swrast_dri.so          vmwgfx_dri.so
root@-:~# ls /usr/lib/x86_64-linux-gnu/dri/
crocus_dri.so       i965_drv_video.so  nouveau_drv_video.so  r600_drv_video.so      virtio_gpu_dri.so
d3d12_dri.so        iHD_drv_video.so   nouveau_vieux_dri.so  radeon_dri.so          virtio_gpu_drv_video.so
d3d12_drv_video.so  iris_dri.so        r200_dri.so           radeonsi_dri.so        vmwgfx_dri.so
i915_dri.so         kms_swrast_dri.so  r300_dri.so           radeonsi_drv_video.so  zink_dri.so
i965_dri.so         nouveau_dri.so     r600_dri.so           swrast_dri.so
zcobol commented 7 months ago

@GXTX those libraries are part of Mesa and not WSL

GXTX commented 7 months ago

@GXTX those libraries are part of Mesa and not WSL

Correct. However, it's only disabled due to WSLg not supporting 32-bit. :)