Ubuntu 20.04 无法检测到任何可以进行色彩管理的设备

Ubuntu 20.04 无法检测到任何可以进行色彩管理的设备

在“设置”的“颜色”部分,我看到了以下消息:无法检测到任何可以进行颜色管理的设备。另外,我认为我的夜灯不亮就是因为这个原因。我该如何解决这个问题?终端中 nvidia-smi 命令的输出如下:

Mon Aug  7 20:50:36 2023       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 390.157                Driver Version: 390.157                   |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GT 525M     Off  | 00000000:01:00.0 N/A |                  N/A |
| N/A   87C    P0    N/A /  N/A |    222MiB /   964MiB |     N/A      Default |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID   Type   Process name                             Usage      |
|=============================================================================|
|    0                    Not Supported                                       |
+-----------------------------------------------------------------------------+

此外,systemctl status colord 的输出是:

● colord.service - Manage, Install and Generate Color Profiles
Loaded: loaded (/lib/systemd/system/colord.service; static; vendor preset: enabled)
Active: failed (Result: exit-code) since Mon 2023-08-07 22:19:06 +0330; 12min ago
Process: 13368 ExecStart=/usr/libexec/colord (code=exited, status=127)
Main PID: 13368 (code=exited, status=127)

Aug 07 22:19:06 username systemd[1]: Starting Manage, Install and Generate Color Profiles...
Aug 07 22:19:06 username systemd[1]: colord.service: Main process exited, code=exited, status=127/n/a
Aug 07 22:19:06 username systemd[1]: colord.service: Failed with result 'exit-code'.
Aug 07 22:19:06 username colord[13368]: /usr/libexec/colord: symbol lookup error: /lib/x86_64-linux-gnu/libgusb.so.2: undefined symbol: libusb_get_parent
Aug 07 22:19:06 username systemd[1]: Failed to start Manage, Install and Generate Color Profiles.

还:

libusb-1.0-0-dev is already the newest version (2:1.0.23-2build1).

答案1

获取帮助英特尔社区,我解决了我的问题。如果你有同样的问题,首先你必须手动libusblibsub 网站. 然后你必须通过以下方式安装它:

./configure
make
make install

最后,你需要将 .so 文件和与 libusb 相关的链接从/usr/local/lib/文件夹复制到/lib/x86_64-linux-gnu/另一个文件夹。然后重启 Ubuntu。

答案2

我遇到了同样的问题。这是因为 libusb 安装在我的系统上的两个位置,而我的包管理器所知道的那个位置并不是 colord 正在使用的那个位置。大概是以前有人手动安装了 libusb。我通过将另一个安装链接到我的包管理器控制的 .so 文件来修复它,但您可能也可以通过删除包管理器之外安装的文件来修复它。

  1. 弄清楚我的包管理器认为 libusb 在哪里

    ~$ dpkg -L libusb-1.0-0-dev | grep \.so /usr/lib/x86_64-linux-gnu/libusb-1.0.so
    
  2. 已验证 colord 所指的“未定义”符号实际上是在我的包管理器控制的 libusb 中定义的(就我而言,colord 找不到 libusb_set_option,但想法是一样的)

    /usr/lib/x86_64-linux-gnu$ nm -gDC libusb-1.0.so | grep libusb_set_option 0000000000004eb0 T libusb_set_option
    
  3. 查找了可以安装该库的其他地方。在/lib

  4. 使用与步骤 2 相同的命令,看到“未定义”符号确实未在此 libusb 副本中定义,因此假设这是 colord 正在使用的符号。

  5. 我重新链接/lib/libusb-1.0.so/lib/libusb-1.0.so.0我的包管理器知道的文件,但您可能只需删除手动安装并强制 colord 查看 /lib 之外的内容。

    /lib# ll | grep usb
    lrwxrwxrwx  1 root root     39 Apr 16 16:02 libusb-1.0.so -> /usr/lib/x86_64-linux-gnu/libusb-1.0.so
    lrwxrwxrwx  1 root root     41 Apr 16 16:04 libusb-1.0.so.0 -> /usr/lib/x86_64-linux-gnu/libusb-1.0.so.0
    

相关内容