最近更新后Nvidia Graphics驱动程序破坏Vulkan的PPA修复(Ubuntu,Linux Mint)
将您的Nvidia 410或415驱动程序更新到最新版本。 原始GPU驱动程序PPA 为某些用户打破了Vulkan。
在更新为Nvidia图形驱动程序版本410.78或415.18之后,某些Ubuntu(但Linux Mint和其他基于Ubuntu的Linux发行版用户也可能会受到影响)用户将不再具有Vulkan ,游戏(DXVK /质子游戏)或使用它的应用程序。
这个 Reddit线程 PPA:提到了一个修复程序,该修复程序可能会导致从A更新Nvidia图形驱动程序后Vulkan无法正常工作。请重新安装Nvidia驱动程序。这可以使用Synaptic软件包管理器轻松完成(使用以下工具安装: sudo apt install synaptic
搜索Nvidia,选择所有已安装的Nvidia驱动程序包,然后单击 Mark for Reinstallation
来自 Package
菜单,最后点击 Apply
按钮见 libnvidia-gl-DRIVERVERSION
已安装(此软件包是 libnvidia-gl-410
对于Nvidia 410驱动程序 libnvidia-gl-415
如果尚未安装Nvidia 415驱动程序,请安装。要检查此软件包是否已安装:
apt-cache policy libnvidia-gl-DRIVERVERSION
C.替代修复(通过 推特)随着Ubuntu PPA的Nvidia图形驱动程序最新更新,Vulkan不再起作用, /usr/share/vulkan/icd.d/nvidia_icd.json
文件检查此文件是否包含以下内容:
{
"file_format_version" : "1.0.0",
"ICD": {
"library_path": "libGLX_nvidia.so.0",
"api_version" : "1.1.84"
}
}
如果 library_path
值是 libGL.so.1
替换为 libGLX_nvidia.so.0
。您可能需要重新启动。
如果文件不存在或为空,请使用以下命令创建它:
sudo mkdir -p /usr/share/vulkan/icd.d
sudo nano /usr/share/vulkan/icd.d/nvidia_icd.json
的 nano
命令打开 /usr/share/vulkan/icd.d/nvidia_icd.json
使用Nano命令行文本编辑器。粘贴以下内容 nvidia_icd.json
:
- 对于Nvidia 410:
{
"file_format_version" : "1.0.0",
"ICD": {
"library_path": "libGLX_nvidia.so.0",
"api_version" : "1.1.82"
}
}
- 对于Nvidia 415:
{
"file_format_version" : "1.0.0",
"ICD": {
"library_path": "libGLX_nvidia.so.0",
"api_version" : "1.1.84"
}
}
保存文件(使用 Ctrl + O
然后 Enter
保存并最终 Ctrl + X
退出Nano)。您可能需要重新启动系统。
您可以通过安装它来检查是否已解决 vulkan-tools
:
sudo apt install vulkan-tools
并运行 vulkaninfo
在终端中:
vulkaninfo
如果出现错误,说明您的Ubuntu或Linux Mint桌面上的Vulkan支持已中断。这是我得到的错误 /usr/share/vulkan/icd.d/nvidia_icd.json
文件为空:
$ vulkaninfo
==========
VULKANINFO
==========
Vulkan Instance Version: 1.1.82
vulkaninfo: /build/vulkan-tools-ZnxIl9/vulkan-tools-1.1.82.0+dfsg1/vulkaninfo/vulkaninfo.c:564: AppGetGlobalLayerExtensions: Assertion `!err' failed.
Aborted (core dumped)
当错误出现时 /usr/share/vulkan/icd.d/nvidia_icd.json
文件使用 libGL.so.1
代替 libGLX_nvidia.so.0
:
$ vulkaninfo
==========
VULKANINFO
==========
Vulkan Instance Version: 1.1.82
ERROR: [Loader Message] Code 0 : loader_scanned_icd_add: Attempt to retrieve either 'vkGetInstanceProcAddr' or 'vk_icdGetInstanceProcAddr' from ICD libGL.so.1 failed.
Cannot create Vulkan instance.
/build/vulkan-tools-ZnxIl9/vulkan-tools-1.1.82.0+dfsg1/vulkaninfo/vulkaninfo.c:825: failed with VK_ERROR_INCOMPATIBLE_DRIVER