操作系统:Ubuntu 20 python: 3.8.2 IDE:Pycharm CE
一般来说,我可以通过/usr/bin/python3在终端中导入dbus,但我必须在pycharm中初始化我的项目,并尝试构建一个venv,它基于解释器(/usr/bin/python3)。
然而,在pycharm的终端(venv激活)中,我无法导入dbus。但是如果我直接选择系统解释器而不使用venv,那么一切都是正常的。
已尝试将dbus文件夹从系统包根目录复制到venv,但没有尝试。我不认为重新安装dbus-python可以解决这个问题,因为它在real-envi中运行良好,而且我已经在venv中安装了dbus-python。
只是想知道为什么..。因为没有venv还是有点小麻烦。
发布于 2020-09-17 18:23:07
dbus-python需要使用--system-site-packages创建Python虚拟环境,因为它依赖于与系统包管理器一起安装的包。
在Pycharm中,这意味着在创建虚拟环境时选中Inherit global site-packages框。
您可以考虑使用不同的Python D-Bus绑定,这些绑定不具有相同的依赖关系,比如pydbus。
https://stackoverflow.com/questions/63935868
复制相似问题