web-dev-qa-db-de.com

So verknüpfen Sie die home brew python version und legen sie als Standard fest

Ich bin gerade von MacPorts zu HomeBrew gewechselt. Nach der Installation aller erforderlichen XCode-Versionen und anderer Software habe ich versucht, python mit homebrew zu installieren: Ich denke, es wurde erfolgreich installiert, aber wenn ich which python es zeigt mir immer noch 2.7.3, was meiner Meinung nach die mit Mountain Lion gelieferte Version ist.

which python
/usr/local/bin/python

python --version
Python 2.7.3

also habe ich versucht, erneut zu installieren

brew install python --framework --universal
Warning: python-2.7.5 already installed, it's just not linked

Aber es heißt python 2.7.5 bereits installiert und nicht verlinkt, ich habe versucht, brew link python

Das hat mich zu folgender Nachricht geführt, ich habe keine Ahnung, was ich tun soll:

Verknüpfen von /usr/local/Cellar/python/2.7.5 ... Warnung: Python konnte nicht verknüpft werden. Verknüpfung wird aufgehoben ...

Error: Could not symlink file: /usr/local/Cellar/python/2.7.5/bin/smtpd2.py
Target /usr/local/bin/smtpd2.py already exists. You may need to delete it.
To force the link and overwrite all other conflicting files, do:
  brew link --overwrite formula_name

To list all files that would be deleted:
  brew link --overwrite --dry-run formula_name
37
add-semi-colons

Nach der Installation von python3 mit brew install python3 Ich habe den Fehler erhalten:

Error: An unexpected error occurred during the `brew link` step
The formula built, but is not symlinked into /usr/local
Permission denied @ dir_s_mkdir - /usr/local/Frameworks
Error: Permission denied @ dir_s_mkdir - /usr/local/Frameworks

Nach der Eingabe von brew link python3 der Fehler war:

Linking /usr/local/Cellar/python/3.6.4_3... Error: Permission denied @ dir_s_mkdir - /usr/local/Frameworks

Um das Problem zu lösen:

Sudo mkdir -p /usr/local/Frameworks
Sudo chown -R $(whoami) /usr/local/*
brew link python3

Danach konnte ich python3 öffnen, indem ich python3 ????

(From https://github.com/Homebrew/homebrew-core/issues/20985 )

37
lenooh

Wenn du benutzt hast

brew install python

vor dem 'Unlink' hast du

brew info python
/usr/local/Cellar/python/2.7.11

python -V
Python 2.7.10

dann mach's

brew unlink python && brew link python

und öffne eine neue Terminal Shell

python -V
Python 2.7.11
7
Rolf Schulze

Geben Sie im Terminal Folgendes ein:

brew link python
7
Hercules

Unter OS X High Sierra musste ich Folgendes tun:

Sudo install -d -o $(whoami) -g admin /usr/local/Frameworks
brew uninstall --ignore-dependencies python
brew install python
python --version # should work, returns 2.7, which is a Python thing (it's weird, but ok)

gutschrift auf https://Gist.github.com/irazasyed/7732946#gistcomment-2235469

Ich denke es ist besser als rekursiv das/usr/local Verzeichnis zu chownen, aber das kann andere Probleme lösen;)

5
Chaim Eliyah

Ich denke, Sie müssen genau angeben, mit welcher Version Sie den Befehl brew link python Verknüpfen möchten:

brew link python 3

Es wird Ihnen so einen Fehler geben:

Linking /usr/local/Cellar/python3/3.5.2... 
Error: Could not symlink bin/2to3-3.5
Target /usr/local/bin/2to3-3.5
already exists. 

Möglicherweise möchten Sie es entfernen:

rm '/usr/local/bin/2to3-3.5'

So erzwingen Sie die Verknüpfung und überschreiben alle in Konflikt stehenden Dateien:

brew link --overwrite python3

So listen Sie alle zu löschenden Dateien auf:

brew link --overwrite --dry-run python3

sie müssen jedoch den Befehl kopieren/einfügen, um den folgenden Link zu erzwingen:

brew link --overwrite python3

Ich denke, dass Sie die Version (die neuere) installiert haben müssen.

4
slapash

wenn Sie also weiterhin python2 als Standard-Bin-Python festlegen möchten, führen Sie Folgendes aus:

brew unlink python && brew link python2 --force
2
Eric Guo

Diese Antwort dient zum Aktualisieren von Python 2.7.10 auf Python 2.7.11 unter Mac OS X El Capitan. Auf dem Terminal-Typ:

brew unlink python

Danach tippe auf Terminal

brew install python
1
Vikram Dutt