Проблемы при обновлении Python на OS X - PullRequest
1 голос
/ 15 января 2011

У меня OS X 10.6.6 Snow Leopard. Установка Python для OS X по умолчанию - 2.6.1 в 64-битном режиме. Apple прекрасно устанавливает несколько расширений Python, таких как numpy, и несколько фреймворков для Apple Events.

Большинство не рекомендует обновлять Perl по умолчанию на OS X, так как ОС полагается на определенные поведения Perl во время выпуска. Сообщество Python выглядит более оптимистично и рекомендует :

Подавляющая рекомендация Сообщество "MacPython" должно обновить ваш Python, загрузив и установка более новой версии из Страница стандартного выпуска Python

Я сделал две попытки обновления. Первой попыткой было установить Python 2.7.1 через MacPorts. Второй была просто прямая загрузка Python 2.7.1 со страницы стандартного выпуска Python .

Факты:

  1. Версия MacPorts установлена ​​в /opt/local/bin/python с фреймворками в /opt
  2. Стандартные OS X python 2.6.1 и 2.5.4 остаются на /usr/bin
  3. /System/Library/Frameworks/Python.framework имеет фреймворки для python v 2.3, 2.5, 2.6 и «Current». «Текущий» пуст.
  4. Загрузка с сайта python установлена ​​на /usr/local/bin и является ссылкой на /Library/Frameworks/Python.framework/Versions 2.7
  5. Мой путь установлен, поэтому версия MacPorts является первой в пути.

Вопросы и проблемы:

  1. Версия MacPorts не может работать pydocs -g. Сбой из-за ошибки: TclError: out of stack space (infinite loop?) Я пытался загрузить версию Tkinter для macports, но все равно не испытывал радости. Идеи?
  2. Могу ли я мигрировать через установленные Apple модули поддержки python или мне нужно вручную переустановить каждый из них?
  3. Могу ли я удалить каркас python 2.3 в /System/Library/Frameworks/Python.framework? Похоже, что нет ссылки на эти исполняемые файлы в каталоге /usr/bin.
  4. Если сообщество «MacPython» рекомендует «обновить», почему версия системы остается неизменной при загрузке Python 2.7.1?
  5. Как только я выясню все эти версии, какова «лучшая практика» при совместном использовании модулей между различными установленными версиями python?

Ответы [ 2 ]

1 голос
/ 15 января 2011

1.Версия MacPorts не может запустить pydocs -g.Сбой из-за ошибки: TclError: недостаточно места в стеке (бесконечный цикл?) Я попытался загрузить версию Tkinter для macports, но все равно не рад.Идеи?

Я не пользователь MacPorts, поэтому у меня нет никаких мыслей по этому поводу.

2.Могу ли я мигрировать через установленные Apple модули поддержки Python или мне нужно вручную переустановить каждый из них?

Переустановите каждый из них вручную.Я бы порекомендовал установить их в одной или нескольких virtualenv средах, чтобы не загрязнять ваши глобальные каталоги site-packages.

3.Могу ли я удалить среду разработки Python 2.3 в /System/Library/Frameworks/Python.framework?Кажется, что нет ссылки на эти исполняемые файлы в каталоге / usr / bin.

Я бы ничего не удалил в /System/Library/Frameworks/.Как заявил Алекс Мартелли в своем ответе на этот вопрос : «Вы не должны вмешиваться в поставляемый системой Python».

4.Если сообщество «MacPython» рекомендует «обновить», почему системная версия остается неизменной при загрузке Python 2.7.1?

Хотя они используют слово «обновление», они действительноозначает выполнить совершенно новую установку и не использовать / не трогать установленную версию Apple.

5.Как только я выясню все эти версии, какова «лучшая практика» при совместном использовании модулей между различными установленными версиями python?

virtualenv

Для информациио том, как я установил Python и различные пакеты, ознакомьтесь со следующими вопросами StackOverflow:

При использовании Python.org DMG будет выполнять установки Python Framework, расположенные в /Library/Frameworks/Python.framework/.

0 голосов
/ 21 ноября 2012

единственное место, которое я нашел с ответом: Следите за овечьим блогом

Все кредиты для подписки Follow The Sheep за этот замечательный ответ на вопрос № 1: MacPorts & TCL threading ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...