¿Cómo puedo usar Homebrew Python con Homebrew MacVim en Mountain Lion?


14

Originalmente pregunté y respondí esta pregunta: ¿Cómo puedo usar la versión de Homebrew Python con Homebrew MacVim?

Estas instrucciones funcionaron en Snow Leopard usando Xcode 4.0.1 y herramientas de desarrollo asociadas. Sin embargo, ya no parecen funcionar en Mountain Lion con Xcode 4.4.1.

Mi objetivo es dejar la versión del sistema de Python completamente intacta e instalar solo paquetes de PyPI en el site-packagesdirectorio de Homebrew . Quiero usar el paquete vim_bridge en MacVim, así que necesito compilar MacVim contra la versión Homebrew de Python.

He editado la fórmula de MacVim para agregarlos a los argumentos:

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

Luego instalo con el comando:

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

Sin embargo, todavía parece estar usando de alguna manera Python 2.7.2 del sistema. Esto me parece extraño porque también parece estar usando el ejecutable correcto.

: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

Eliminé todo /usr/localy reinstalé Homebrew ejecutando estos comandos:

$ 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

¿Has intentado correr brew link pythony luego python --versionen una nueva terminal?
— Erupción

@ user1099816 Python ya está vinculado en / usr / local / bin, y la versión de Python en mi ruta es 2.7.3.
— Stephen Jennings

No puedo reproducir esto ... Creo que nos falta algo sobre tu entorno. El enlace simbólico a: /usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/Current/lib/python2.7/config - mencionado en la pregunta anterior ... ¿eso está al revés?
— Randall Hunt

@ranman /usr/local/lib/python2.7/config está vinculado a /usr/local/Cellar/.../lib/python2.7/config, que contiene config.c, entre otros archivos.
— Stephen Jennings

¿Está instalando la misma versión de fórmula y exactamente la misma versión de MacVim en ambos sistemas? ¿Quizás algo se rompió entre lanzamientos y sus actualizaciones no están relacionadas?
— Daniel Beck

Respuestas:


22

No es una buena respuesta aquí, pero quería dejar una nota confirmando que encontré exactamente el mismo problema en una instalación ~ Mountain Lion nueva.

Hay una discusión interesante en el siguiente enlace que sugiere un error controvertido entre los archivos de configuración de MacVim y Python ... pero hacer el cambio sugerido en el archivo de configuración no funcionó para mí (suponiendo que lo hice bien).

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

Lo que funcionó para mí es, ejem, morder la bala y simplemente simular la instalación de Python del sistema en el homebrew. Se siente sucio, pero al menos ahora tengo omnicomplete completo trabajando en módulos de terceros ...

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! Así que primero intenté modificar el Makefile, luego también simblinking el marco /System/Library/Frameworks, y ahora funciona incluso después de restaurar el enlace simbólico. Volveré y averiguaré si ambos eran necesarios, y tal vez intente investigar qué diablos está sucediendo, ¡pero definitivamente recibes mi agradecimiento (y recompensa; no está mal obtener 200 repeticiones por tu primera respuesta)!
— Stephen Jennings

1
Sí, incluso si devuelvo el Makefile, siempre que haya /System/Library/.../Currentvinculado a la versión de Homebrew, MacVim compila con 2.7.3.
— Stephen Jennings el

¡Increíble! Me alegra que haya funcionado. Feliz vimming
— Mike Repass el

Solo quería decir que esto también solucionó mi problema.
— Jeremy Cantrell

Tuve este problema durante un par de días también y una vez que usé brew install macvim , usé el comando brew link: sobrescribir macvim y ¡funcionó perfectamente!
— SamTebbs33

2

Acabo de introducir una solución 1 para que MacVim compile con una Python elaborada (si tiene una) y cargue con éxito la línea eléctrica (la instalé después de mi vía Python elaborada pip install pip install git+git://github.com/Lokaltog/powerline). No olvides configurar tu ~/.vimrc.

Nunca cambies el nombre de las cosas dentro de /System.

Por favor, revertir los cambios locales, restaurar /System, brew updatey brew rm macvimpor último brew install macvim.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.