Pydroid 3: pip завершается с ошибкой FileNotFoundError во временном кеше при установке matplotlib (попытка обновления piAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Pydroid 3: pip завершается с ошибкой FileNotFoundError во временном кеше при установке matplotlib (попытка обновления pi

Сообщение Anonymous »


Среда: 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'))
Что я пробовал: [EDIT] То, что я (на 9 месяцев старше и немного мудрее) не пробовал, но, к сожалению, не смог оформить заказ, потому что сейчас работаю на мобильных устройствах с iOS:
  • с использованием python -m pip явно
  • проверка tempfile.gettempdir() или содержимое /data/user/0/ru.iiec.pydroid3/cache
Вопрос:
  • Что вызывает FileNotFoundError для файлов временного кэша во время загрузки pip на Pydroid 3?
  • Как установить Matplotlib на Pydroid 3 без возникновения сбоя обновления pip? Является ли рекомендуемым решением использовать плагин репозитория Quick-Install Pydroid или есть способ заставить pip не использовать проблемное поведение кэша/времени?
[EDIT] Дополнительный контекст:

Я видел ссылки, которые Pydroid предоставляет репозиторий быстрой установки для готовых научных пакетов, и это может быть предполагаемым путем установки Matplotlib на Android. Есть ли у кого-нибудь идеи, рекомендуется ли этот плагин?


[EDIT 2] В рамках дальнейшего расследования я также узнал больше о -->


Возможных причинах FileNotFoundError во время pip обновить на Pydroid 3 (Android):
  • Кэши приложений могут быть полными, отсутствовать или очищены, приводя к сбою создания временных файлов.
  • Ожидаемый путь к файловой системе может физически не существовать однако, или Pip пытается получить доступ к нему или освободить его слишком рано.
  • Оболочка Pydroid иногда некорректно обрабатывает --upgrade в мобильных средах.
Файловая система и песочница Android могут конфликт с операциями temp/cache Pip, особенно во время самостоятельного обновления.
Перебои в работе сети или агрессивная очистка антивируса/на уровне ОС могут удалить временные файлы загрузки до завершения работы Pip.
Резюме: Pip пытается обновить себя, но из-за Может возникнуть комбинация изолированной файловой системы Android, оболочек, специфичных для Pydroid, и временного управления файлами, FileNotFoundError. Использование Быстрая установка (предварительно созданные диски) или --no-cache-dir с python -m pip решает большинство проблем.

Подробнее здесь: https://stackoverflow.com/questions/795 ... ing-matplo
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»