GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

„Pip“ erstellen Nicht-Standard-Python 3.7 verwenden?

Ich weiß, dass dies eine ähnliche Frage ist wie die, die schon oft gestellt wurde, aber ich kann immer noch keine vertrauenswürdige Lösung finden.
Ich habe viele Versionen von Python auf meinem Ubuntu 16.04 installiert, von 2.7 bis zum neuesten 3.7.4.

Standard ist die 2.7. Ich weiß, dass ich die Standardeinstellung nicht ändern sollte, weil andere es getan haben und es zu schwerwiegenden Problemen wie Systemausfällen geführt hat.
Allerdings muss ich eine Software über pip installieren:

pip install damn_software

was Python>=3.6

erfordert
:~$ pip install damn_software
DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support

Collecting damn_software
Using cached https://files.pythonhosted.org/packages/cc/19/632db1d5095a35b08ba000d63e1ceffaf56c730dbd259f021e1fb7a75f68/damn_software-0.1.8.tar.gz
ERROR: Command errored out with exit status 1:
 command: /usr/bin/python -c 'import sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-qDPgIM/damn_software/setup.py'"'"'; __file__='"'"'/tmp/pip-install-qDPgIM/damn_software/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)(__file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' egg_info --egg-base pip-egg-info
     cwd: /tmp/pip-install-qDPgIM/damn_software/
Complete output (1 lines):
ERROR: Python (3, 5) or later is required by software-helpers for damn_software
----------------------------------------
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output.

Ich weiß nicht, wie ich das umgehen kann? Vielleicht ein Symlink?

BEARBEITEN :Ich musste die folgenden zusätzlichen Befehle ausführen, bevor die Installation durchging:

python3.7 -m pip install --user --upgrade pip
python3.7 -m pip install your_packages
sudo apt install python3.7-dev 

Akzeptierte Antwort:

Führen Sie einfach den Python-Interpreter der gewünschten Version mit pip aus als auszuführendes Modul, wie:

python3.6 -m pip install some_package

Auf diese Weise können Sie zu 100 % sicher sein, dass der Interpreter, mit dem Sie Ihre Skripte starten, derselbe ist, für den Sie Pip-Pakete verwalten. Keine Systemänderungen erforderlich.

Der pip ausführbare Datei ist sowieso nicht genau als eine feste Version definiert, was auch immer als nächstes aktualisiert wird, würde sie wahrscheinlich wieder überschreiben. Außerdem bricht es manchmal aus anderen Gründen wie Versionsinkompatibilitäten sowieso ab. Normalerweise würde ich es überhaupt nicht direkt verwenden, außer vielleicht, wenn Sie sich in einer venv (virtuelle Python-Umgebung) befinden, wo es genau definiert ist, was es ist.

Verwandte:Probleme mit Nvidia GPU und Ubuntu 16.04?
Ubuntu
  1. Wie kann man Startx dazu bringen, alternatives Xinitrc zu verwenden?

  2. Ist es möglich, Menüs in (terminalbasiertem) Vim zu erstellen und zu verwenden?

  3. Wie verwendet man Unetbootin, um ein bootfähiges Windows-USB-Installationsprogramm zu erstellen?

  4. Wie kann Skype Notify-osd verwenden?

  5. Verwendung des Befehls:"Befehl"?

Wie man die Linux-App von Telegram dazu bringt, System Window Frame zu verwenden

Wie man den Befehl fuser unter Linux verwendet und optimal nutzt

So installieren Sie Pip unter Ubuntu

Wie man den Befehl „grep“ gut nutzt

So installieren und verwenden Sie Python PIP-Tools unter Ubuntu 20.04 LTS

Wie kann man Befehle in Mathematica 8 dazu bringen, alle Kerne zu verwenden?