Graphics, GPU & Display

Vulkan loader finds no usable driver

Vulkan initialization can fail before any GPU workload starts when ICD manifests, driver libraries or architecture-specific packages are missing.

On this page
  1. Symptoms & scope
  2. Possible causes
  3. Diagnose safely
  4. Evidence-guided next steps
  5. References & review
  6. Related problems

Symptoms & scope

  • vulkaninfo cannot create an instance or enumerate a physical device.
  • A game reports an incompatible Vulkan driver although OpenGL works.

Relevant environment

Vulkan applications using the Khronos loader, including 32-bit applications and sandboxed or containerized runtimes.

Recognizable messages (synthetic examples)
ERROR | DRIVER: vkCreateInstance: Found no drivers!

Inspect prior ICD and dependency errors; this is earlier than a game’s shader or GPU execution failure.

Possible causes

These are possible explanations, not a confirmed diagnosis. Several independent faults can coexist.

  • A missing or invalid ICD manifest may prevent locating the driver library.
  • An override, missing shared-library dependency, unsupported Vulkan version or wrong 32/64-bit architecture may exclude all usable drivers.

Diagnose safely

Run one command at a time in the relevant session. Read the explanation first. Uppercase placeholders need your own values; tools and privileges vary by distribution. These commands are displayed here and never executed by the website.

Check 1

Run in the same user/runtime environment as the failing application. The native utility does not automatically test a 32-bit runtime.

vulkaninfo --summary

Interpret the result: If this succeeds, compare application architecture and sandbox access. If instance creation fails, focus on discovery before blaming shader execution.

Check 2

Temporarily enable Khronos loader messages for this read-only query; it creates no persistent environment setting.

env VK_LOADER_DEBUG=error,warn,driver vulkaninfo --summary

Interpret the result: Look for the searched JSON paths and rejected libraries. A warning about one optional ICD can coexist with a working driver; Found no drivers means no usable instance driver remained.

Evidence-guided next steps

Clear a stale per-application driver override

If the launcher uses VK_DRIVER_FILES or VK_ICD_FILENAMES pointing to a removed driver, remove that setting from a saved copy and retry normal discovery. Use a specific override only when intentionally testing an installed compatible driver.

Precautions: Do not edit vendor ICD JSON files to point at arbitrary libraries. Elevated applications may intentionally ignore unsafe environment overrides.

Recovery / rollback: Restore the original launcher setting if a documented custom runtime depends on it.

Did this solution help you?

Share this solution#

Install the matching Vulkan runtime components

If logs show absent manifests or wrong architecture, install the distribution’s Vulkan loader and GPU-specific ICD package for the actual application architecture. For a sandbox, use its supported graphics runtime extension rather than host file copies.

Precautions: Keep 32- and 64-bit driver packages on compatible versions and verify hardware support; OpenGL support does not imply Vulkan support.

Recovery / rollback: Restore the earlier package snapshot or sandbox runtime version if the package change introduces a regression.

Did this solution help you?

Share this solution#

References & review

This guide was prepared from primary project or distribution sources and reviewed on the date shown. This is an editorial source check, not evidence that a fix was reproduced on your hardware. Diagnostic log examples are synthetic fixtures. Version-dependent details must be checked against your installed release.