![同一软件有 2 个版本,但功能不同](https://linux22.com/image/1169039/%E5%90%8C%E4%B8%80%E8%BD%AF%E4%BB%B6%E6%9C%89%202%20%E4%B8%AA%E7%89%88%E6%9C%AC%EF%BC%8C%E4%BD%86%E5%8A%9F%E8%83%BD%E4%B8%8D%E5%90%8C%20.png)
我以前通过 Ubuntu 软件中心安装了 Darktable,它运行良好。然而,在 Darktable 首选项选项卡中,OpenCL 未启用。
我真的希望启用 OpenCl,因为它可以提高 Darktable 的性能。因此,我确保我拥有正确的 NVIDIA 驱动程序,该驱动程序允许启用 OpenCL 配置,并尝试运行darkatbe-cltest
,但失败并显示以下错误消息:
darktable-cltest not known
You can install it with sudo apt install darktable
我有点困惑,因为我已经按照上面描述的方式安装了 Darktable。
但我确实继续进行操作sudo apt install darktable
,在我的计算机上安装了新版本的 Darktable。
我还使用了sudo add-apt-repository ppa:pmjdebruijn/darktable-release
,以便更新到较新的版本。奇怪的是,这个新版本现在支持 OpenCL!
现在我的电脑上有 2 个不同版本的 Darktable,都是 2.6.2 版本。但是,一个支持 OpenCL,而另一个不支持。两个版本的布局也略有不同(字体大小和填充不同)。
当我运行 Synaptic 时,我只能看到一个版本的 Darktable,即从终端安装的版本。
当我尝试查找通过 Ubuntu 软件中心安装的软件包(例如 Discord)时,我无法在 Synaptic 中找到它们。
因为我以为 Ubuntu 软件中心是终端的 GUI,所以在 Ubuntu 软件中心找不到安装的每个软件包有点奇怪。
(注意:我必须提到,我确实运行了sudo apt-get update && sudo apt upgrade
几次,并且还通过 Synaptic 更新了我在那里看到的一些软件包。)
答案1
Debian 和 Ubuntu apt-get
,apt
(synaptic
可能还有其他一些)以“老式”的deb
文件使用方式(类似于rpm
已经存在很久的 redhat 文件)从存储库提供软件包。这些很容易使用,但以“老式”的方式安装软件和库,将它们添加到主机操作系统;如果出现严重的不匹配,可能会破坏整个操作系统。
Snap 和类似的 AppImage 和 Flatpak 是安装软件的其他方式,它们的不同之处在于软件最终进入“容器”,其特点是容器包含运行软件包所需的所有软件(因此“不能”干扰主机操作系统)。但这有一个警告,即容器可能需要特殊设置 - 至少 - 才能与(或者可以使用部分)实际安装的操作系统或硬件及其文件和/或库。
例如,要使gimp
snap 包能够使用主机操作系统提供的 CUPS 进行打印,只需
sudo snap connect gimp:cups-control
是必须的。
如果您不提供该功能,或者没有这样的适配,则操作系统功能将不可用。
我怀疑您的情况就是 OpenCL 的情况。