在 Debian 10 (Radeon HD 295X2) 上安裝 Vulkan
這台電腦不是我自己的,雖然我很熟悉。在所有者的 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 核心提供的有點過時的驅動程序。