Wie kann ich die Homebrew Python-Version mit Homebrew MacVim on Snow Leopard verwenden?


14

Hinweis: Informationen zu Mountain Lion finden Sie unter: Wie kann ich Homebrew Python mit Homebrew MacVim auf Mountain Lion verwenden?

Ich habe Python 2.7 mit Homebrew unter Mac OS X Snow Leopard installiert. Wenn ich MacVim mit installiere brew install macvim, wird es mit Python-Unterstützung kompiliert, jedoch mit der Python-Installation des Systems. Dies kann durch Ausführen des Befehls angezeigt werden:

:python print(sys.version)

2.6.1 (r261:67515, Jun 24 2010, 21:47:49) 
[GCC 4.2.1 (Apple Inc. build 5646)]

Vim scheint jedoch die ausführbare Python-Datei zu verwenden, die sich in meinem Pfad befindet:

:python print(sys.executable)

/usr/local/bin/python

Dies verursacht Probleme bei Vim-Skripten, die vim_bridge verwenden , wie z. B. vim-rst-tables (Modul "re" kann nicht importiert werden).

Wie kann ich Vim mit meiner Homebrewed Python-Version kompilieren?


Scheint jetzt behoben zu sein: github.com/Homebrew/homebrew/issues/26496
Will

Antworten:


14

Entfernen Sie zuerst MacVim, wenn Sie es bereits installiert haben: brew remove macvim

Als nächstes bearbeiten MacVim die Formel mit dem Befehl: brew edit macvim. Suchen Sie die Argumentliste (beginnt mit args = %W[ ...) und ändern Sie diese Zeile:

--enable-pythoninterp

Ändern Sie es in diese zwei Zeilen:

--enable-pythoninterp=dynamic
--with-python-config-dir=/usr/local/lib/python2.7/config

(Dieses Konfigurationsverzeichnis sollte symbolisch verlinkt sein /usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/Current/lib/python2.7/config)

Wenn Sie MacVim jetzt mit neu installieren brew install macvim, wird Ihre Python 2.7-Installation verwendet.

:python print(sys.version)

2.7.3 (default, Apr 16 2012, 23:20:02) 
[GCC 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.1.00)]
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.