Mesa missing patches for Vulkan shared libraries

  • Done
  • quality assurance status badge
Details
2 participants
  • Kaelyn
  • Mája Tomášek
Owner
unassigned
Submitted by
Mája Tomášek
Severity
normal
M
M
Mája Tomášek wrote on 2 Oct 2022 16:33
(address . bug-guix@gnu.org)
878rly70t2.fsf@disroot.org
Toggle quote (10 lines)
> It was only recently that I was able to fix an issue with the tutorial
> program not finding the .so for the validation layer, by patching the
> layer manifest file with the full store path of the .so. A similar
> phase would need to be added to the mesa package definition for its
> device selection layer to work properly. The error from the mesa layer
> not being found when I run the basic tutorial program is:
>
> !! validation layer: libVkLayer_MESA_device_select.so: cannot open
> shared object file: No such file or directory

And the mentioned patch is:

Toggle quote (12 lines)
> + #:phases #~(modify-phases %standard-phases
> + (add-after 'install 'set-layer-path-in-manifest
> + (lambda* (#:key outputs #:allow-other-keys)
> + (let* ((out (assoc-ref outputs "out"))
> + (manifest (string-append out
> + "/share/vulkan/explicit_layer.d"
> + "/VkLayer_khronos_validation.json")))
> + (substitute* manifest
> + (("\"libVkLayer_khronos_validation.so\"")
> + (string-append "\"" out
> "/lib/libVkLayer_khronos_validation.so\"")))))))))

This errors actually appears in more packages, for example vulkan-info
prints this error.

Patches to all shared vulkan libraries should be added into mesa, so
applications can actually load vulkan.
K
K
Kaelyn wrote on 16 Oct 2022 18:57
(name . 58251@debbugs.gnu.org)(address . 58251@debbugs.gnu.org)
OpaXBfPD99lxnbZY8S1RaX4vp6wCRuRp3OvRw8dSyoTlrG9nBdTJAcvKoRu9vZPDR99nBItqu49b1BfFHMkP5FWNHVGP9fVv_9yyTEnsJoM=@protonmail.com
I've just sent in https://issues.guix.gnu.org/58566to update mesa on core-updates, and that patch includes a new phase to fix up the Vulkan layer manifests similar to how I'd done for vulkan-validationlayers in https://issues.guix.gnu.org/57297.
K
K
Kaelyn wrote on 21 Nov 2022 20:16
(name . 58251@debbugs.gnu.org)(address . 58251@debbugs.gnu.org)(name . 58566@debbugs.gnu.org)(address . 58566@debbugs.gnu.org)
mMOF0iUQmEqnMCl5GZY6_efUCebwChxpK1AuyPs6bw0EpRgL4gc-LdqIauUckj_0euYiNF1nHuvnCZ1EHsV__5NFRXBbRrlGvwBt1ELjV5E=@protonmail.com
I've just created https://issues.guix.gnu.org/59453with the patch to mesa on core-updates to fix the library paths in the Vulkan layer manifests. I split the change out from my previous mesa update patch (https://issues.guix.gnu.org/58566) as mesa on core-updates has since been updated to version 22.2.4.
K
K
Kaelyn wrote on 18 Jun 2023 18:23
(name . 58251@debbugs.gnu.org)(address . 58251@debbugs.gnu.org)
6YVO6IqlPgDqB2VAUT_ieP8EQ52AYOuTh9MP6GaJKG_5tC0BmGGDkCEWRS9PYxKEjKfSkfgsdSlE1yDNfS58UoFypnph0frljQQxsvz_wDo=@protonmail.com
The manifest files have been fixed in mesa to include the path to the vulkan layer shared objects in commit 02995444dbe9861c32b6e2cdbfb7a7b2affe2c2b.
K
K
Kaelyn wrote on 18 Jun 2023 18:23
(No Subject)
(name . control@debbugs.gnu.org)(address . control@debbugs.gnu.org)
RVvKocAbectVfDKEkOsG_hKu3gVePCnv3tQR2pS77JxfU5S3QOksMzcHQSenLI4X59YgBvj663ULREQQ0dH6Df65me2UgykqRvlzuOfUPh0=@protonmail.com
close 58251
?