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.