Ich habe Python 3 auf Cygwin installiert. Ich kann jedoch keine Python 3-Pakete über pip
installieren. Gibt es eine Möglichkeit, dies zu tun?
1) Stellen Sie sicher, dass Sie während der Installation von cygwin die Python/python-setuptools aus der Liste installieren. Dadurch wird das Paket "easy_install" installiert.
2) Geben Sie den folgenden Befehl ein:
easy_install-a.b pip
Sie müssen a.b
durch Ihre Python-Version ersetzen, die 2.7 oder 3.4 oder was auch immer sein kann.
Wenn Sie mehr als eine Python-Installation haben, müssen Sie pip (und wahrscheinlich auch setuptools) für jede Installation separat installieren.
Dazu können Sie zuerst ez_setup.py
herunterladen und mit python3 ausführen:
/usr/bin/python3 ez_setup.py
Das sollte setuptools installieren und außerdem ein easy_install
-Skript für Ihre Python-Version erstellen, z. /usr/bin/easy_install-3.2
, mit dem Sie pip installieren können:
/usr/bin/easy_install-3.2 pip
Dies installiert Pip in Ihrem Python3-Site-Paketverzeichnis und erstellt erneut ein Skript /usr/bin/pip-3.2
, mit dem Sie Pakete für diese Python-Version installieren können.
Alternativ können Sie den Installationsanweisungen von hier und hier folgen.
Ich denke, die alternativen Installationsanweisungen die von Mata verlinkt werden, sind am einfachsten:
Um pip zu installieren, laden Sie sicher get-pip.py herunter.
Führen Sie dann Folgendes aus (dies erfordert möglicherweise Administratorzugriff):
python get-pip.py
Da OP spezifisch über Python3 spricht, müssen wir meiner Meinung nach angeben, dass der Benutzer Python2 bereits installiert hat, was sehr wahrscheinlich ist.
# If you don't have Python3 already, use apt-cyg:
apt-cyg install python3
# First update pip, pip2
pip2 install --upgrade pip
# Install pip3:
python3 -m ensurepip
# Finally update pip3:
pip3 install --upgrade pip
$ pip3 -V
pip 9.0.1 from /usr/lib/python3.4/site-packages (python 3.4)
BTW. Es gibt mehrere Gabeln von apt-cyg , aber am besten wird die von kou1okada gehalten, Sie werden es lieben.
EDIT: 2018-11-15
Da ich anfing, virtualenv nicht zu verwenden, musste ich kürzlich meine Cygwin Python3-Installation aktualisieren. Dabei wurden einige Dinge erkannt, die offensichtlich sein sollten, aber leicht vergessen werden können.
Bei der Installation und Verwendung von Python3 auf Cygwin (und wahrscheinlich auf den meisten anderen * nix distros) wird durch only der grundlegende Python3-Interpreter als Cygwin-Paket installiert. Verwenden Sie ab diesem Zeitpunkt nur noch das Installationsprogramm pip.
Nachdem Sie alle Python3-Pakete mit pip installiert oder aktualisiert haben, beschwert sich Ihr Cygwin-Paketmanager, dass Ihr Paket "Incomplete"
ist. Das liegt daran, dass pip die Dateien in diesem Paket ersetzt/aktualisiert hat. Überprüfen Sie mit: cygcheck.exe -c |grep Incomplete
.
Installieren Sie diese Pakete nicht erneut mit Cygwin.
# cygcheck.exe -c |grep Incomplete
python3-setuptools 34.3.2-1 Incomplete
Was ich also tat, war klar, dass all python3 verwandte Cygwin-Pakete, mit Ausnahme von dem Python3 selbst. Dann habe ich den einzigen neu installiert: python3-setuptools
.
# apt-cyg remove python3-setuptools
apt-cyg install python3-setuptools
# Fix pip3 symlink (or just pip if you don't have python2)
ln -s /usr/bin/pip3.6 /usr/bin/pip3
# That also installs the Cygwin packages:
# python3-appdirs, python3-packaging, python3-pyparsing, python3-six
# Now, update setuptools with pip:
pip3 install -U --force-reinstall --only-binary=:all: --no-clean --no-cache-dir setuptools
# pip list |grep setuptools
setuptools 40.5.0
Das hätte auch alle setuptools Abhängigkeiten mit den neuesten Updates neu installieren sollen.
Tun Sie sich ab jetzt einen Gefallen und verwenden Sie eine virtuelle Umgebung.
Unter Windows können Sie pip zum Installieren von Paketen verwenden. Wenn Sie unter cygwin mehrere Python-Installationen haben, geben Sie den vollständigen Python-Pfad an, z. Python 2
/usr/bin/python2.7 -m pip install pyyaml
Python 3
/usr/bin/python3.6 -m pip install pyyaml
Falls Sie nicht pip installiert haben, installieren Sie es mit dem folgenden Befehl
/usr/bin/python2.7 -m ensurepip
oder
/usr/bin/python3.6 -m ensurepip
Ich habe gerade gelernt, inspiriert von https://www.scivision.co/install-pip-in-cygwin/ und der Antwort davor, dass Sie statt pip nur Pip2 für python2 oder pip3 verwenden müssen Python 3 in Cygwin unter Windows. Ich habe mich den ganzen Tag darüber gewundert ...