Come posso usare Homebrew Python con Homebrew MacVim su Mountain Lion?


14

Inizialmente avevo posto una domanda e ho risposto: come posso usare la versione Homebrew Python con Homebrew MacVim?

Queste istruzioni hanno funzionato su Snow Leopard utilizzando Xcode 4.0.1 e gli strumenti di sviluppo associati. Tuttavia, non sembrano più funzionare su Mountain Lion con Xcode 4.4.1.

Il mio obiettivo è lasciare completamente intatta la versione del sistema di Python e installare solo i pacchetti PyPI nella site-packagesdirectory di Homebrew . Voglio usare il pacchetto vim_bridge in MacVim, quindi devo compilare MacVim sulla versione Homebrew di Python.

Ho modificato la formula di MacVim per aggiungerli agli argomenti:

--enable-pythoninterp=dynamic
--with-python-config-dir=/usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/Current/lib/python2.7/config

Quindi installo con il comando:

brew install macvim --override-system-vim --custom-icons --with-cscope --with-lua

Tuttavia, sembra che stia ancora usando Python 2.7.2 dal sistema. Questo mi sembra strano perché sembra anche usare l'eseguibile corretto.

:python print(sys.version)
2.7.2 (default, Jun 20 2012, 16:23:33)
[GCC 4.2.1 Compatible Apple Clang 4.0 (tags/Apple/clang-418.0.60)]

:python print(sys.executable)
/usr/local/bin/python

$ /usr/local/bin/python --version
Python 2.7.3

$ /usr/local/bin/python -c "import sys; print(sys.version)"
2.7.3 (default, Aug 12 2012, 21:17:22) 
[GCC 4.2.1 Compatible Apple Clang 4.0 ((tags/Apple/clang-421.0.60))]

$ readlink /usr/local/lib/python2.7/config
/usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/Current/lib/python2.7/config

Ho rimosso tutto /usr/locale reinstallato Homebrew eseguendo questi comandi:

$ ruby <(curl -fsSkL raw.github.com/mxcl/homebrew/go)
$ brew install git mercurial python ruby
$ brew install macvim
   (nope, still broken)
$ brew remove macvim
$ ln -s /usr/local/Cellar/python/..../python2.7/config /usr/local/lib/python2.7/config
$ brew install macvim

Hai provato a correre brew link pythone poi python --versionsu un nuovo terminale?
Eruzione cutanea

@ user1099816 Python è già collegato in / usr / local / bin e la versione di Python nel mio percorso è 2.7.3.
Stephen Jennings,

Non riesco a riprodurre questo ... Penso che ci manchi qualcosa del tuo ambiente. Il link simbolico a: /usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/Current/lib/python2.7/config - menzionato nella domanda precedente ... è indietro?
Randall Hunt,

@ranman /usr/local/lib/python2.7/config è collegato a /usr/local/Cellar/.../lib/python2.7/config, che contiene config.c, tra gli altri file.
Stephen Jennings,

Stai installando la stessa versione della formula e la stessa identica versione di MacVim su entrambi i sistemi? Forse qualcosa si è rotto tra le versioni e i tuoi aggiornamenti non sono correlati?
Daniel Beck

Risposte:


22

Non è una buona risposta qui, ma volevo lasciare una nota che confermasse che ho riscontrato questo stesso identico problema su una ~ nuova installazione di Mountain Lion.

C'è qualche discussione interessante al link qui sotto che suggerisce un controverso bug tra i file di configurazione di MacVim e Python ... ma apportare la modifica suggerita nel file di configurazione non ha funzionato per me (supponendo di averlo fatto bene).

/programming/6490513/vim-failing-to-compile-with-python-on-os-x/8276426#8276426

Quello che ha funzionato per me è, ahem, mordere il proiettile e semplicemente ricollegare il sistema python install all'homebrew. Mi sento sporco, ma almeno ottengo il completo omnicomplete lavorando su moduli di terze parti ora ...

cd /System/Library/Frameworks/Python.framework/Versions
sudo mv Current Current-sys
sudo ln -s /usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/2.7 Current

brew install macvim

sudo mv Current Current-brew
sudo mv Current-sys Current

A-ha! Quindi ho provato prima a modificare il Makefile, quindi anche il collegamento simbolico al framework /System/Library/Frameworkse ora funziona anche dopo aver ripristinato il link simbolico. Tornerò indietro e scoprirò se entrambi fossero necessari, e forse proverò a scavare in quello che sta succedendo, ma tu sicuramente riceverai i miei ringraziamenti (e generosità; non male ottenere 200 rappresentanti per la tua prima risposta)!
Stephen Jennings,

1
Sì, anche se /System/Library/.../Currentrimetto il Makefile, fintanto che mi sono collegato alla versione di Homebrew, MacVim si compila con 2.7.3.
Stephen Jennings,

Eccezionale! Sono contento che abbia funzionato. Happy Vimming.
Mike Repass,

Volevo solo dire che questo ha risolto anche il mio problema.
Jeremy Cantrell,

Ho avuto questo problema anche per un paio di giorni e una volta avevo usato brew install macvim , ho usato il comando brew link - sovrascrivi macvim e poi ha funzionato perfettamente!
SamTebbs33,

2

Ho appena inserito una correzione 1 in modo che MacVim si costruisca con un Python preparato (se ne hai uno) e carichi con successo il powerline (l'ho installato dopo il mio Python preparato tramite pip install pip install git+git://github.com/Lokaltog/powerline). Non dimenticare di impostare il tuo ~/.vimrc.

Non rinominare mai le cose all'interno di /System.

Si prega, annullare le modifiche locali, ripristinare il /System, brew updatee brew rm macviminfine brew install macvim.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.