quicklisp-projects icon indicating copy to clipboard operation
quicklisp-projects copied to clipboard

Please add shadercl

Open JolifantoBambla opened this issue 2 years ago • 9 comments

Please add shadercl. You'll need libshaderc_shared, which is included in the VulkanSDK beginning from version 1.2.135 (07-Apr-2020).

Thanks!

JolifantoBambla avatar Jul 21 '21 08:07 JolifantoBambla

Is there an easy way to install the library on Debian 10?

quicklisp avatar Aug 07 '21 00:08 quicklisp

I don't think there are packages for buster, but the tarball of the Vulkan SDK (any version > 1.2.135) should contain the library: https://vulkan.lunarg.com/sdk/home#linux

If it doesn't, it should at least contain a script for building all binaries (should be at the root level of the extracted tarball). Running it with the shaderc option should build the library:

./vulkansdk shaderc

See section "Helper build script": https://vulkan.lunarg.com/doc/sdk/1.2.170.0/linux/getting_started.html

Unfortunately, I can't test this before monday (~ 14:00 UTC).

JolifantoBambla avatar Aug 07 '21 11:08 JolifantoBambla

@quicklisp so yeah, the library isn't included in any packages for Debian 10 - only in the Vulkan SDK packages for Ubuntu 16.04, 18.04 and 20.04.

The easiest (supported) way to install shaderc is via the tarball of the Vulkan SDK (>= 1.2.135). I've tested it with the current version (1.2.182) on buster: https://sdk.lunarg.com/sdk/download/1.2.182.0/linux/vulkansdk-linux-x86_64-1.2.182.0.tar.gz You can either source the included setup-env.sh or just copy the library (at <vulkan-sdk-version>/x86_64/lib/libshaderc_shared.so.1) to /usr/lib or wherever cffi can find it and delete the rest of the SDK (~ 940 MB).

The library is also included in an archive which can also be downloaded directly from their github repo. The library is located at /install/lib/libshaderc_shared.so.1 within this archive. The extracted archive has ~ 2.3 GB though and these downloads should generally be considered unsupported. So I'd recommend going the SDK route.

Is one of those options okay?

JolifantoBambla avatar Aug 09 '21 15:08 JolifantoBambla

I guess it's a bit unorthodox, but you could also install the vulkan-sdk package from the Ubuntu 18.04 sources. I'm not sure if you want to do that, but I just tried it for 1.2.182 on Debian 10 and it worked:

wget -qO - https://packages.lunarg.com/lunarg-signing-key-pub.asc | sudo apt-key add -
sudo wget -qO /etc/apt/sources.list.d/lunarg-vulkan-1.2.182-bionic.list https://packages.lunarg.com/vulkan/1.2.182/lunarg-vulkan-1.2.182-bionic.list
sudo apt update
sudo apt install vulkan-sdk

JolifantoBambla avatar Aug 26 '21 13:08 JolifantoBambla

By the way just a suggestion to Zach... Have you considered asking to include a docker script in the submission?

guicho271828 avatar Aug 26 '21 20:08 guicho271828

Is there something needs to be done?

hw762 avatar Mar 30 '22 19:03 hw762

I believe Xach has this on hold until a better way to install libshaderc on Debian 10 comes around. Apparently, LunarG currently has no plans to package it for Debian but maybe someone will eventually repackage the Ubuntu packages or something. Here's a discussion about it: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=890472

JolifantoBambla avatar Mar 30 '22 22:03 JolifantoBambla

Some existing packages require libraries to be preinstalled anyways. Is there something different for this package?

For instance, cl-glfw3 and cl-sdl would just fail if their libraries are not found.

hw762 avatar Apr 06 '22 17:04 hw762

@hw762 There's a degree of difficulty involved. For some libraries in the past I go through some steps to make it happen - but it just happens faster when it's easy for me to do. I don't mind doing some extra work, but it adds to delays.

quicklisp avatar Apr 06 '22 23:04 quicklisp