Manjaro/hashcat 錯誤:clGetPlatformIDs(): CL_PLATFORM_NOT_FOUND_KHR

Manjaro/hashcat 錯誤:clGetPlatformIDs(): CL_PLATFORM_NOT_FOUND_KHR

我目前正在使用 Manjaro。

當我運行時hashcat,出現以下錯誤:

clGetPlatformIDs(): CL_PLATFORM_NOT_FOUND_KHR

運行hashcatwithsudo會出現相同的錯誤。

在 google 上搜尋了該錯誤後,我發現這通常是 NVIDIA 顯示卡的驅動程式問題,因此我嘗試了一些驅動程式問題。

這是我的 NVIDIA 資訊:

$ lspci -v | grep -i nvidia 
01:00.0 3D controller: NVIDIA Corporation GP107M [GeForce GTX 1050 Mobile] (rev a1) 
        Kernel driver in use: nvidia 
        Kernel modules: nouveau, nvidia_drm, nvidia 

嘗試使用安裝驅動程式時mhwd,出現以下錯誤:

$ sudo mhwd -a pci nonfree 0300
> Skipping already installed config 'video-hybrid-intel-nvidia-440xx-prime' for device: 0000:00:02.0 (0300:8086:591b) Display controller Intel Corporation HD Graphics 630

我檢查了已安裝的驅動程式並確認已安裝:

$ pacman -Qs nvidia 
local/lib32-nvidia-440xx-utils 440.64-1 
    NVIDIA drivers utilities (32-bit) 
local/libvdpau 1.3-1 
    Nvidia VDPAU library 
local/linux54-nvidia-440xx 440.64-2 (linux54-extramodules) 
    NVIDIA drivers for linux. 
local/mhwd-nvidia-340xx 340.108-1 
    MHWD module-ids for nvidia 340.108 
local/mhwd-nvidia-390xx 390.132-1 
    MHWD module-ids for nvidia 390.132 
local/mhwd-nvidia-418xx 418.113-1 
    MHWD module-ids for nvidia-418xx 418.113 
local/mhwd-nvidia-430xx 430.64-1.0 
    MHWD module-ids for nvidia-430xx 430.64 
local/mhwd-nvidia-435xx 435.21-1.0 
    MHWD module-ids for nvidia 435.21 
local/mhwd-nvidia-440xx 440.64-1 
    MHWD module-ids for nvidia 440.64 
local/nvidia-440xx-utils 440.64-1 
    NVIDIA drivers utilities 
local/nvidia-prime 1.0-1 
    NVIDIA Prime Render Offload configuration and utilities 

當我嘗試卸載看似不必要的驅動程式時,出現依賴錯誤:

$ sudo pacman -Rns local/mhwd-nvidia-340xx local/mhwd-nvidia-390xx local/mhwd-nvidia-418xx local/mhwd-nvidia-430xx local/mhwd-nvidia-435xx 
checking dependencies... 
error: failed to prepare transaction (could not satisfy dependencies) 
:: removing mhwd-nvidia-340xx breaks dependency 'mhwd-nvidia-340xx' required by mhwd-db 
:: removing mhwd-nvidia-390xx breaks dependency 'mhwd-nvidia-390xx' required by mhwd-db 
:: removing mhwd-nvidia-418xx breaks dependency 'mhwd-nvidia-418xx' required by mhwd-db 
:: removing mhwd-nvidia-430xx breaks dependency 'mhwd-nvidia-430xx' required by mhwd-db 
:: removing mhwd-nvidia-435xx breaks dependency 'mhwd-nvidia-435xx' required by mhwd-db 

當然mhwd-db是不能卸載的,因為mhwd

我查了一下nvidia-settings,但不知道我到底該在這裡做什麼。

nvidia 設定

我也看到提到bumblebee但我不確定是否應該使用它。

我該如何修復該錯誤clGetPlatformIDs(): CL_PLATFORM_NOT_FOUND_KHR

答案1

我知道這是一個很晚的答案,但我也遇到了同樣的問題,而且我只是能夠解決它。

要執行 hascat,您需要 OpenCL 和 CUDA(如果您的 GPU 支援)。我有一個 RTX 2070,安裝 cuda 時:

sudo pacman -S cuda

我可以選擇為我安裝的驅動程式設計的 opencl 軟體包。我安裝了 455.x 版本的驅動程序,因此我選擇了 opencl_nvidia-455xx 選項。

安裝opencl和cuda後一切正常。

相關內容