Среда: Pydroid 3 Версия: [3.11]
Платформа: Android
Проблема:
Во время установки pip пытается обновиться, но я столкнулся со следующей ошибкой:
([EDIT] сокращено до самых важных моментов)
Код: Выделить всё
FileNotFoundError: [Errno 2] No such file or directory: '/data/user/0/ru.iiec.pydroid3/cache/tmppgsp4a9r'
...
ProtocolError: ("Connection broken: FileNotFoundError(2, 'No such file or directory')", FileNotFoundError(2, 'No such file or directory'))
Код: Выделить всё
pip install --upgrade pip- -
Код: Выделить всё
pip install --upgrade pip --no-cache-dir-скрипт через:Код: Выделить всё
get-pip.py, который показал мне очень большой сценарий для реализации.Код: Выделить всё
https://bootstrap.pypa.io/get-pip.py
- с использованием python -m pip явно
- проверка tempfile.gettempdir() или содержимое /data/user/0/ru.iiec.pydroid3/cache
- Что вызывает FileNotFoundError для файлов временного кэша во время загрузки pip на Pydroid 3?
- Как установить Matplotlib на Pydroid 3 без возникновения сбоя обновления pip? Является ли рекомендуемым решением использовать плагин репозитория Quick-Install Pydroid или есть способ заставить pip не использовать проблемное поведение кэша/времени?
Я видел ссылки, которые Pydroid предоставляет репозиторий быстрой установки для готовых научных пакетов, и это может быть предполагаемым путем установки Matplotlib на Android. Есть ли у кого-нибудь идеи, рекомендуется ли этот плагин?
[EDIT 2] В рамках дальнейшего расследования я также узнал больше о -->
Возможных причинах FileNotFoundError во время pip обновить на Pydroid 3 (Android):
- Кэши приложений могут быть полными, отсутствовать или очищены, приводя к сбою создания временных файлов.
- Ожидаемый путь к файловой системе может физически не существовать однако, или Pip пытается получить доступ к нему или освободить его слишком рано.
- Оболочка Pydroid иногда некорректно обрабатывает --upgrade в мобильных средах.
Перебои в работе сети или агрессивная очистка антивируса/на уровне ОС могут удалить временные файлы загрузки до завершения работы Pip.
Резюме: Pip пытается обновить себя, но из-за Может возникнуть комбинация изолированной файловой системы Android, оболочек, специфичных для Pydroid, и временного управления файлами, FileNotFoundError. Использование Быстрая установка (предварительно созданные диски) или --no-cache-dir с python -m pip решает большинство проблем.
Подробнее здесь: https://stackoverflow.com/questions/795 ... ing-matplo
Мобильная версия