如何安装 Roccat Vulcan 100 键盘驱动程序以获得灯光效果?

如何安装 Roccat Vulcan 100 键盘驱动程序以获得灯光效果?

这是键盘背光的驱动程序(它被称为“驱动程序”,不是吗?)

如果可能的话,我最感兴趣的是使用源代码来了解有关驱动程序的更多信息。

然而,在深入研究代码之前,我想安装它并查看它的工作原理。这样我就可以真正循环“编辑-重新安装-尝试”来查看我的更改产生的效果。

好吧,我被困在方 1,因为我无法安装驱动程序。

说实话,我没有尝试过跑步sudo make install,在这样做之前,我想了解一下我是否真的需要它,如果我确实需要它,请了解为什么。

我看到Makefile有这个install目标:

install:
    mkdir -p ${DESTDIR}${BINDIR}
    cp $(NAME) ${DESTDIR}${BINDIR}/
    mkdir -p ${DESTDIR}${UDEVDIR}
    cp *.rules ${DESTDIR}${UDEVDIR}/

上面有几行

BINDIR  := /usr/bin

所以我很清楚,sudo需要特权,因为DESTDIR未设置,所以${DESTDIR}${BINDIR}解析为/usr/bin,需要sudo写入。

${DESTDIR}但是,如果首先有一个前缀,我想知道为什么我不应该运行make install DESTDIR=$HOME或其他什么。

事实上,我尝试过,但是可执行文件roccat-vulcan在运行时出现错误Unable to find keyboard。也许它确实需要安装在/usr/bin


一个相关的问题。


更新

正如答案中所建议的,我尝试使用 进行安装sudo make install BINDIR='/usr/local/bin',并成功执行以下操作输出

mkdir -p /usr/local/bin
cp roccat-vulcan /usr/local/bin/
mkdir -p /etc/udev/rules.d
cp *.rules /etc/udev/rules.d/

但是,尝试运行该软件会出现错误。下面的输出roccat-vulcan -v

ROCCAT Vulcan for Linux [github.com/duncanthrax/roccat-vulcan]
Effect Color Table (change these with -c option)
colorIdx    R      G      B  Desc
------------------------------------------------
0           0      0    119  Base keyboard color (dark blue)
1        2303      0   -255  Typing color, initial key (over-red, under-blue)
2        2303      0   -143  Typing color, first neighbor key
3        2303      0      0  Typing color, second neighbor key
4         187      0    204  Ghost typing color, initial key
5         153      0    187  Ghost typing color, first neighbor key
6          85      0    170  Ghost typing color, second neighbor key
7           0      0      0  (null)
8           0      0      0  (null)
9           0      0      0  (null)
open_device(1e7d, 3098): No LED device found
open_device(1e7d, 307a): ignoring non-LED interface #0
open_device(1e7d, 307a): ignoring non-LED interface #1
open_device(1e7d, 307a): ignoring non-LED interface #2
open_device(1e7d, 307a): LED interface at USB path 1-3:1.3
open_device(1e7d, 307a): Unable to open LED interface 1-3:1.3
Error: Unable to find keyboard

答案1

${DESTDIR}${UDEVDIR}不解析为 /usr/bin,${BINDIR}但是。${DESTDIR}用于调试安装。如果未指定,程序将安装在文件系统的根目录或/路径中。您必须在没有设置${DESTDIR}将程序安装到系统中的情况下运行该程序。

另外,如果您想将二进制文件安装在不同的位置,则必须设置BINDIR为您拥有的目录,例如 $HOME 文件夹中的目录。 freedesktop 的人使用 $HOME/.local/bin/,你也可以。您还可以将 $HOME/.local/bin/ 添加到 PATH 变量,以便可以使用可执行文件而无需指定其完整路径。

最后,根据链接项目的自述文件,如果您想以非root身份运行该程序,您需要成为plugdev组的成员。您可以使用以下命令检查您是否是plugdev 的一部分id -Gn <your username here>,并检查plugdev 是否​​已列出。如果您不在plugdev 中,您可以使用 将自己添加到该组中usermod -a -G plugdev <your username>。不幸的是,您需要 root 才能将用户添加到组中,但之后您不应再需要任何 root 访问权限。

编辑:此外,由于您无法写入 /etc/udev/rules.d 目录,因此 make install 需要 sudo 。

相关内容