Como posso usar o Homebrew Python com o Homebrew MacVim no Mountain Lion?

14

Originalmente, perguntei e respondi a esta pergunta: Como posso usar a versão Homebrew Python com o Homebrew MacVim?

Essas instruções funcionaram no Snow Leopard usando o Xcode 4.0.1 e ferramentas de desenvolvedor associadas. No entanto, eles não parecem mais funcionar no Mountain Lion com o Xcode 4.4.1.

Meu objetivo é deixar a versão do sistema do Python completamente intocada e instalar apenas pacotes PyPI no site-packagesdiretório do Homebrew . Quero usar o pacote vim_bridge no MacVim, portanto, preciso compilar o MacVim com a versão Homebrew do Python.

Editei a fórmula do MacVim para adicioná-los aos argumentos:

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

Então eu instalo com o comando:

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

No entanto, ainda parece estar de alguma forma usando o Python 2.7.2 do sistema. Isso me parece estranho, porque também parece estar usando o executável correto.

: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

Eu removi tudo /usr/locale reinstalei o Homebrew executando estes 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
Stephen Jennings
fonte
Você já tentou correr brew link pythone depois python --versionem um novo terminal?
Rash
@ user1099816 O Python já está vinculado em / usr / local / bin, e a versão do Python no meu caminho é 2.7.3.
Stephen Jennings
Não consigo reproduzir isso ... acho que estamos perdendo algo no seu ambiente. O link simbólico para: /usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/Current/lib/python2.7/config - mencionado na pergunta anterior ... é reverso?
Randall caça
O @ranman /usr/local/lib/python2.7/config está vinculado a /usr/local/Cellar/.../lib/python2.7/config, que contém o config.c, entre outros arquivos.
Stephen Jennings
Você está instalando a mesma versão da fórmula e a mesma versão do MacVim nos dois sistemas? Talvez algo tenha quebrado entre os lançamentos e suas atualizações não estejam relacionadas?
Daniel Beck

Respostas:

22

Não é uma boa resposta aqui, mas queria deixar uma nota confirmando que encontrei exatamente o mesmo problema em uma instalação recente do Mountain Lion.

Há alguma discussão interessante no link abaixo, que sugere um bug polêmico entre os arquivos de configuração do MacVim e Python ... mas fazer a alteração sugerida no arquivo de configuração não funcionou para mim (supondo que eu fiz corretamente).

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

O que funcionou para mim é, ahem, mordendo a bala e apenas simbolizando a instalação do python do sistema para o homebrew. Parece sujo, mas pelo menos eu fico completo omnicomplete trabalhando em módulos de terceiros agora ...

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
Mike Repass
fonte
A-ha! Então, tentei primeiro modificar o Makefile, depois também associar o framework à simbologia /System/Library/Frameworks, e agora ele funciona mesmo depois de restaurar o link simbólico. Vou voltar e descobrir se os dois foram necessários e talvez tentar descobrir o que diabos está acontecendo, mas você definitivamente recebe meus agradecimentos (e recompensa; não é ruim conseguir 200 representantes para sua primeira resposta)!
Stephen Jennings
1
Sim, mesmo que eu coloque o Makefile de volta, desde que tenha /System/Library/.../Currentvinculado a versão do Homebrew, o MacVim compila com o 2.7.3.
Stephen Jennings
Impressionante! Tão feliz que deu certo. Feliz Vimming.
Mike Repasse
Só queria dizer que isso também resolveu o meu problema.
Jeremy Cantrell
Eu também tive esse problema por alguns dias e, depois de usar o brew install macvim , usei o comando link do comando - overwrite macvim e funcionou perfeitamente!
precisa saber é o seguinte
2

Acabei de pressionar uma correção 1 para que o MacVim construa com um Python fabricado (se você tiver um) e carregue a linha de força com sucesso (eu a instalei após a instalação do meu python fabricado pip install pip install git+git://github.com/Lokaltog/powerline). Não se esqueça de definir o seu ~/.vimrc.

Nunca renomeie as coisas por dentro /System.

Por favor, reverta as alterações locais, restaure seu e /System, finalmente .brew updatebrew rm macvimbrew install macvim

Samuel John
fonte