Ik heb Python 3 geïnstalleerd op Cygwin. Ik kan echter geen Python 3-pakketten installeren via pip
. Is er een manier om dit te doen?
Antwoord 1, autoriteit 100%
1) Zorg ervoor dat u tijdens het installeren van cygwin de
python/python-setuptools uit de lijst. Dit zal het “easy_install” pakket installeren.
2) Typ het volgende commando:
easy_install-a.b pip
Je moet a.b
vervangen door je python-versie die 2.7 of 3.4 of wat dan ook kan zijn.
Antwoord 2, autoriteit 35%
Als je meer dan één python-installatie hebt, moet je pip (en waarschijnlijk ook setuptools) voor elke installatie afzonderlijk installeren.
Om dit te doen, kunt u eerst ez_setup.py
en voer het uit met python3:
/usr/bin/python3 ez_setup.py
Dat zou setuptools moeten installeren en ook een easy_install
-script moeten maken voor je python-versie, b.v. /usr/bin/easy_install-3.2
, waarmee u pip kunt installeren:
/usr/bin/easy_install-3.2 pip
Hiermee wordt pip in de directory van uw python3-sitepakketten geïnstalleerd en wordt opnieuw een script /usr/bin/pip-3.2
gemaakt, dat u kunt gebruiken om pakketten voor deze python-versie te installeren.
U kunt ook de installatie-instructies volgen van hieren hier.
Antwoord 3, autoriteit 22%
Ik denk dat de alternatieve installatie-instructiesgekoppeld door mata het eenvoudigst zijn:
Om pip te installeren, downloadt u veilig get-pip.py.
Voer vervolgens het volgende uit (waarvoor mogelijk beheerderstoegang vereist is):
python get-pip.py
Antwoord 4, autoriteit 12%
Omdat OP specifiek over Python3 praat, denk ik dat we dat moeten specificeren voor het geval de gebruiker Python2 al heeft geïnstalleerd, wat zeer waarschijnlijk is.
# 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. Er zijn verschillende forks van apt-cyg, maar de best onderhouden is die van kou1okada, je zult het geweldig vinden.
BEWERKEN: 15-11-2018
Omdat ik begon zonder virtualenvte gebruiken, moest ik onlangs vernieuwen mijn Cygwin Python3-installatie, en realiseerde zich een paar dingen in het proces die duidelijk hadden moeten zijn, maar die gemakkelijk kunnen worden vergeten.
-
Bij het installeren en gebruiken van Python3 op Cygwin (en waarschijnlijk op de meeste andere *nix-distributies), alleeninstalleer dan de basis Python3-interpreter als een Cygwin-pakket. Gebruik vanaf dat moment alleen het pipinstallatieprogramma.
-
Nadat je python3-pakketten hebt geïnstalleerd of bijgewerkt met pip, zal je Cygwin-pakketbeheerder klagen dat je pakket
"Incomplete"
is. Dat komt omdat pipde bestanden in dat pakket heeft vervangen/bijgewerkt. Controleer met:cygcheck.exe -c |grep Incomplete
.
Installeer die pakketten niet opnieuw met Cygwin.
# cygcheck.exe -c |grep Incomplete
python3-setuptools 34.3.2-1 Incomplete
Dus wat ik deed, was het wissen van allepython3-gerelateerde Cygwin-pakketten, behalvede Python3 zelf. Daarna installeerde ik de enige die nodig was opnieuw: 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
Dat had ook alle setuptools-afhankelijkheden opnieuw moeten installeren met de laatste updates.
Doe jezelf vanaf nu een plezier en gebruik een virtuele omgeving.
Antwoord 5, autoriteit 2%
In Windows kun je pip gebruiken om pakketten te installeren. Als je meerdere python-installaties onder cygwin hebt, geef dan het volledige python-pad op, b.v.
Python 2
/usr/bin/python2.7 -m pip install pyyaml
Python 3
/usr/bin/python3.6 -m pip install pyyaml
In het geval dat pip niet is geïnstalleerd, installeer het dan met onderstaande opdracht
/usr/bin/python2.7 -m ensurepip
of
/usr/bin/python3.6 -m ensurepip
Antwoord 6
Ik heb net geleerd, geïnspireerd door https://www.scivision.co/ install-pip-in-cygwin/en het antwoord hiervoor, dat in plaats van pip te gebruiken, je gewoon pip2 voor python2 of pip3 voor python 3 in cygwin op Windows moet gebruiken. Heb me dit de hele dag afgevraagd…