Instalei o ubuntu22.04 no termux e houve um erro ao executar o pip3 depois de usar o apt install python3-pip nele, a versão do pip é 22.02
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/pip/_vendor/platformdirs/android.py", line 85, in _android_folder
from jnius import autoclass
ModuleNotFoundError: No module named 'jnius'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/bin/pip3", line 5, in <module>
from pip._internal.cli.main import main
File "/usr/lib/python3/dist-packages/pip/_internal/cli/main.py", line 9, in <module>
from pip._internal.cli.autocompletion import autocomplete
File "/usr/lib/python3/dist-packages/pip/_internal/cli/autocompletion.py", line 10, in <module>
from pip._internal.cli.main_parser import create_main_parser
File "/usr/lib/python3/dist-packages/pip/_internal/cli/main_parser.py", line 8, in <module>
from pip._internal.cli import cmdoptions
File "/usr/lib/python3/dist-packages/pip/_internal/cli/cmdoptions.py", line 23, in <module>
from pip._internal.cli.parser import ConfigOptionParser
File "/usr/lib/python3/dist-packages/pip/_internal/cli/parser.py", line 12, in <module>
from pip._internal.configuration import Configuration, ConfigurationError
File "/usr/lib/python3/dist-packages/pip/_internal/configuration.py", line 26, in <module>
from pip._internal.utils.logging import getLogger
File "/usr/lib/python3/dist-packages/pip/_internal/utils/logging.py", line 27, in <module>
from pip._internal.utils.misc import ensure_dir
File "/usr/lib/python3/dist-packages/pip/_internal/utils/misc.py", line 39, in <module>
from pip._internal.locations import get_major_minor_version
File "/usr/lib/python3/dist-packages/pip/_internal/locations/__init__.py", line 14, in <module>
from . import _distutils, _sysconfig
File "/usr/lib/python3/dist-packages/pip/_internal/locations/_distutils.py", line 19, in <module>
from .base import get_major_minor_version
File "/usr/lib/python3/dist-packages/pip/_internal/locations/base.py", line 12, in <module>
USER_CACHE_DIR = appdirs.user_cache_dir("pip")
File "/usr/lib/python3/dist-packages/pip/_internal/utils/appdirs.py", line 17, in user_cache_dir
return _appdirs.user_cache_dir(appname, appauthor=False)
File "/usr/lib/python3/dist-packages/pip/_vendor/platformdirs/__init__.py", line 114, in user_cache_dir
return PlatformDirs(appname=appname, appauthor=appauthor, version=version, opinion=opinion).user_cache_dir
File "/usr/lib/python3/dist-packages/pip/_vendor/platformdirs/android.py", line 43, in user_cache_dir
return self._append_app_name_and_version(_android_folder(), "cache")
File "/usr/lib/python3/dist-packages/pip/_vendor/platformdirs/android.py", line 97, in _android_folder
raise OSError("Cannot find path to android app folder")
OSError: Cannot find path to android app folder
get-pip.py
Este é um script Python que usa alguma lógica de inicialização para instalar o pip.
-
Baixe o script em https://bootstrap.pypa.io/get-pip.py .
-
Abra um terminal/prompt de comando,
cd
para a pasta que contém oget-pip.py
arquivo e execute -
python3 get-pip.py
O método acima instalará o pip em /usr/local/bin/pip e, em seguida, adicionará um soft link para usá-lo. A versão problemática é 22.02, basta atualizar para 23
ln -s /usr/local/bin/pip /usr/bin/pip3
Como poucas pessoas usam ubuntu22.04 no termux, esse problema é relatado incorretamente e não há solução relacionada
E como o pacote numpy em python é necessário, esse pip deve ser instalado, portanto, um método menos convencional é usado
Instalação - pip documentação v23.0 https://pip.pypa.io/en/stable/installation/
wget https://bootstrap.pypa.io/pip/pip.pyz
Faça o download da versão zip do pip e, em seguida, pode ser usado normalmente sem relatórios de erros, verifique a ajuda através do seguinte comando
python pip.pyz --help
Então você pode instalar o Numpy com o seguinte comando
python3 pip.pyz install numpy -i https://pypi.mirrors.ustc.edu.cn/simple/
Alibaba Cloud http://mirrors.aliyun.com/pypi/simple/
Universidade de Ciência e Tecnologia da China https://pypi.mirrors.ustc.edu.cn/simple/
Douban http://pypi.douban.com/ simple /
Universidade de Tsinghua https://pypi.tuna.tsinghua.edu.cn/simple/
Universidade de Ciência e Tecnologia da China http://pypi.mirrors.ustc.edu.cn/simple/
Você pode adicionar o parâmetro -i atrás ao usar o pip para especificar a origem do pip
Funciona bem depois disso
Outra maneira é instalar diretamente o pacote compilado, o que parece ser mais conveniente, o anterior foi escrito para nada :(
apt-get install python3-numpy python3-scipy python3-matplotlib