Debian

在 Debian 10 (Radeon HD 295X2) 上安裝 Vulkan

  • May 31, 2020

這台電腦不是我自己的,雖然我很熟悉。在所有者的 Windows 7 驅動器上,Vulkan 可以正常工作,但在我自己的 Debian 驅動器上卻沒有。我已按照 Debian.org 上的說明進行操作,即啟用 contrib & non-free,並安裝

firmware-linux, firmware-linux-nonfree, libgl1-mesa-dri, xserver-xorg-video-ati

並安裝以下軟體包:

libvulkan-dev, libvulkan1, vulkan-tools, vulkan-utils, vulkan-validationlayers, vulkan-validationlayers-dev, mesa-vulkan-drivers

OpenGL 在 Steam 及其遊戲內外都可以正常工作(包括 i386 和 amd64 支持),但是 Vulkan 無法啟動(儘管根據 dpkg/apt 正確安裝)。我主要對執行 Serious Sam Fusion (2017) 感興趣,但也能夠使用要求不高的 GZDoom 測試 Vulkan 的功能。


一些資訊:

AMD Radeon HD 295X2(與 Vulkan 兼容)

Ryzen 1700X

16 GB RAM (DDR4)

(任何其他必要資訊始終可用)

$ vkcube

vkcube: /build/vulkan-tools-6bmpQy/vulkan-tools-1.1.97+dfsg1/cube/cube.c:3148: 
demo_init_vk: Assertion `!err' failed.
Aborted

$ vulkaninfo

Vulkan Instance Version: 1.1.97

/build/vulkan-tools-6bmpQy/vulkan-tools-1.1.97+dfsg1/vulkaninfo/vulkaninfo.c:3845: 
failed with VK_ERROR_INITIALIZATION_FAILED

$ dpkg -l | grep amdgpu

ii  libdrm-amdgpu1:amd64                   2.4.97-1
ii  libdrm-amdgpu1:i386                    2.4.97-1
ii  libgbm1-amdgpu-pro-base                16.40-348864
ii  libgl1-amdgpu-pro-appprofiles          16.40-348864
ii  libgl1-amdgpu-pro-dri:amd64            16.40-348864
ic  libgl1-amdgpu-pro-glx:amd64            16.40-348864
ii  opencl-amdgpu-pro-icd:amd64            16.40-348864
ii  xserver-xorg-video-amdgpu              18.1.99+git20190207-1

$ glxinfo | grep OpenGL

OpenGL vendor string: X.Org
OpenGL renderer string: AMD HAWAII (DRM 2.50.0, 4.19.0-8-amd64, LLVM 7.0.1)
OpenGL core profile version string: 4.5 (Core Profile) Mesa 18.3.6
OpenGL core profile shading language version string: 4.50
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 4.5 (Compatibility Profile) Mesa 18.3.6
OpenGL shading language version string: 4.50
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 18.3.6
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20

我最終從 AMD 站點安裝了最新的 amdgpu(不是 amdgpu-pro)。如果這樣做,請確保下載比“Radeon Crimson 15.12”更新的驅動程序,因為那是fglrx(不是您想要的)的最後一個版本,而是更新的版本。

事實證明,原因是 AMD 擁有一系列顯卡(大約 Radeon HD 7000 系列到 R9 Fury X),其中支持舊radeon核心驅動程序以及新amdgpu核心驅動程序,讓使用者可以選擇使用其中的任何一個。在這個 Debian Wiki 頁面上解釋了從一個切換到另一個(它只有幾個用於 GRUB 的命令)。

然而,我的解決方案是amdgpu從 AMD 站點安裝最新的核心驅動程序,而不是依賴 Debian 核心提供的有點過時的驅動程序。

引用自:https://unix.stackexchange.com/questions/582334