我一直在尝试让一个程序能够运行,以增加 Logitech G910 键盘上 G 键的兼容性。但这失败了,经过一番挖掘,我发现它的依赖项之一,python 模块 uinput,似乎使程序崩溃了。
Python 3.11.7 (main, Dec 15 2023, 18:12:31) [GCC 11.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import uinput
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/home/user/.local/usr/anaconda/lib/python3.11/site-packages/uinput/__init__.py", line 86, in <module>
_libsuinput_path = os.path.abspath(os.path.join(os.path.dirname(__file__), "..", "_libsuinput" + sysconfig.get_config_var("SO")))
~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
TypeError: can only concatenate str (not "NoneType") to str
此时此刻,我有点困惑。我以前从未见过导入命令失败。我唯一能想象的是 Anaconda 在这里造成了问题?如果有人有一些见解可以分享,我会很高兴。
我目前运行的是 Debian 12(内核版本 5.18.0-3-amd64)、Python 版本 3.11.7、Conda 版本 24.3.0 和 uinput 版本 0.11.2(通过
pip install python-uinput
安装)。
非常感谢任何帮助!
您有一个旧版本的 uinput,它使用的代码已在 python 3.5 中删除,并且已从
python-uinput
中删除,请参阅 this commit。因此升级到新版本可能会有所帮助。
pip install python-uinput==1.0.1