Як я можу використовувати Homebrew Python разом із Homebrew MacVim на Mountain Lion?


14

Я спочатку запитав і відповів на це запитання: Як можна використовувати версію Homebrew Python з Homebrew MacVim?

Ці інструкції працювали над Snow Leopard за допомогою Xcode 4.0.1 та пов'язаних із ними інструментів для розробників. Однак вони, схоже, не працюють на Mountain Lion з Xcode 4.4.1.

Моя мета - залишити версію системи Python повністю недоторканою і встановити лише пакети PyPI в site-packagesкаталог Homebrew . Я хочу використовувати пакет vim_bridge в MacVim, тому мені потрібно компілювати MacVim проти Homebrew версії Python.

Я редагував формулу MacVim, щоб додати їх до аргументів:

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

Потім я встановлюю за допомогою команди:

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

Однак все ще здається, що якимось чином використовує Python 2.7.2 з системи. Мені це здається дивним, оскільки воно також, здається, використовує правильний виконуваний файл.

: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

Я видалив усе в /usr/localі перевстановив Homebrew, виконавши ці команди:

$ 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

Ви спробували бігти, brew link pythonа потім python --versionна свіжий термінал?
Раш

@ user1099816 Python вже пов'язаний у / usr / local / bin, а версія Python на моєму шляху - 2.7.3.
Стівен Дженнінгс

Я не можу це відтворити ... Я думаю, що ми щось пропускаємо про ваше оточення. Символьне посилання на: /usr/local/Cellar/python/2.7.3/Frameworks/Python.framework/Versions/Current/lib/python2.7/config - згадане в попередньому запитанні ... це назад?
Полювання на Рендалла

@ranman /usr/local/lib/python2.7/config посилається на /usr/local/Cellar/.../lib/python2.7/config, який містить config.c, серед інших файлів.
Стівен Дженнінгс

Ви встановлюєте однакову версію формули та точно ту ж версію MacVim в обох системах? Можливо, щось вийшло між випусками та вашими оновленнями не пов’язані між собою?
Даніель Бек

Відповіді:


22

Тут не гарна відповідь, але я хотів залишити записку, яка підтверджує, що я зіткнувся з цією самою проблемою під час встановлення ~ свіжого Mountain Lion.

Нижче наведено цікаве обговорення за посиланням, яке підказує суперечливу помилку між файлами налаштування MacVim та Python ... але внесення запропонованих змін у конфігураційний файл не працювало для мене (припускаючи, що я це зробив правильно).

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

Що зробили роботу для мене, гм, кусають кулі і тільки символічне посилання системи пітона установки до доморощеному. Почувається брудним, але принаймні я отримую повне всеосяжне робота над сторонніми модулями зараз ...

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

А-ха! Тому я спробував спершу змінити Makefile, потім також позначати рамку /System/Library/Frameworks, і тепер це працює навіть після відновлення символьної посилання. Я повернусь і розберуся, чи потрібно було обом, і, можливо, спробую розібратися в тому, що чорт відбувається, але ви обов'язково отримаєте мої подяки (і щедрість; непогано отримати 200 реп. За вашу першу відповідь)!
Стівен Дженнінгс

1
Так, навіть якщо я повертаю Makefile назад, поки я /System/Library/.../Currentпосилаюся на версію Homebrew, MacVim компілює версію 2.7.3.
Стівен Дженнінгс

Дивовижно! Тож радий, що це вийшло. Щасливий Віммінг.
Майк Репас

Просто хотів сказати, що це вирішило і мою проблему.
Джеремі Кантрелл

У мене була ця проблема також пару днів, і як тільки я застосував вариво встановити macvim , я використав посилання для заварювання команди - overwrite macvim, і тоді воно працювало чудово!
SamTebbs33

2

Я просто натиснув виправлення 1, щоб MacVim будував заварений Python (якщо у вас є) і успішно завантажував лінію живлення (я встановив її після завареного python через pip install pip install git+git://github.com/Lokaltog/powerline). Не забудьте встановити своє ~/.vimrc.

Ніколи не перейменуйте речі всередині /System.

Будь ласка, прибираєте локальні зміни, відновити ваші /System, brew updateі brew rm macvimнарешті brew install macvim.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.