Я получаю сообщение об ошибке импорта библиотеки. Я установил python3-gi, и повторный запуск apt install скажет мне, что он уже установлен.
после установки pip dasbus при импорте происходит следующее:
>>>from dasbus.connection import SessionMessageBus
Traceback (most recent call last):
File "/workspaces/playground/dbus.py", line 1, in <module>
from dasbus.connection import SessionMessageBus
File "/usr/local/lib/python3.9/site-packages/dasbus/connection.py", line 27, in <module>
from dasbus.client.proxy import ObjectProxy, InterfaceProxy
File "/usr/local/lib/python3.9/site-packages/dasbus/client/proxy.py", line 24, in <module>
from dasbus.client.handler import ClientObjectHandler
File "/usr/local/lib/python3.9/site-packages/dasbus/client/handler.py", line 29, in <module>
from dasbus.typing import get_variant, get_variant_type, unwrap_variant
File "/usr/local/lib/python3.9/site-packages/dasbus/typing.py", line 27, in <module>
import gi
ModuleNotFoundError: No module named 'gi'
Моя среда выглядит так (я использую плагин devcontainer для vscode), версия python 3.9:
# [Choice] Python version: 3, 3.9, 3.8, 3.7, 3.6
ARG VARIANT="3"
FROM mcr.microsoft.com/vscode/devcontainers/python:0-${VARIANT}
# [Option] Install Node.js
ARG INSTALL_NODE="true"
ARG NODE_VERSION="lts/*"
RUN if [ "${INSTALL_NODE}" = "true" ]; then su vscode -c "umask 0002 && . /usr/local/share/nvm/nvm.sh && nvm install ${NODE_VERSION} 2>&1"; fi
# [Optional] If your pip requirements rarely change, uncomment this section to add them to the image.
COPY requirements.txt /tmp/pip-tmp/
RUN pip3 --disable-pip-version-check --no-cache-dir install -r /tmp/pip-tmp/requirements.txt \
&& rm -rf /tmp/pip-tmp
# [Optional] Uncomment this section to install additional OS packages.
RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
&& apt-get -y install --no-install-recommends gcc python3-dev libv4l-dev libdbus-1-dev libzmq3-dev libczmq-dev
RUN apt install -y python3-gi
# [Optional] Uncomment this line to install global node packages.
# RUN su vscode -c "source /usr/local/share/nvm/nvm.sh && npm install -g <your-package-here>" 2>&1
Я также пытался использовать python 3.8 с тем же результатом. Я также пытался запустить pip install gi
, как предлагается здесь: import gi возвращает ModuleNotFoundError; apt install python3-gi возвращает, что python3-gi уже является самой новой версией, но я получаю сообщение об ошибке несоответствующей версии.