Обновление Python до версии 2.6 на Mac

Я бы хотел обновить установку python по умолчанию (2.5.1), поставляемую с OS X Leopard, до последней версии. Пожалуйста, дайте мне знать, как я могу это достичь.

Спасибо

Ответы

Ответ 1

Не обновляйте.

  • Установить ActivePython (который co-exist с другими).
  • Открытый терминал
  • Тип python2.6

Ответ 2

Когда ОС распределяется с определенной версией Python и использует ее для некоторых функциональных возможностей ОС (как в случае с Mac OS X, так и со многими дистрибутивами Linux и с), вы должны не в любом случае с помощью поставляемого системой Python (как и в случае "обновления" и т.д.): в то время как Python стремится к обратной совместимости в любой основной версии (например, 2.* или 3.*, это никогда не может быть 100 % гарантирует, что ваша операционная система полностью тестировала всю функциональность с конкретной версией Python, которую они распространяют, и если вам удастся изменить эту версию, "на вашей голове" - ни поставщик ОС, ни PSF не несут никакой ответственности за любой ущерб, который может возможно, для вашей системы.

Скорее, как уже было сказано в других ответах, установите любой другой релиз, который вы хотите "помимо" системного, - зачем вмешиваться в это решающее, а также рисковать, когда устанавливать других так легко? На типичных машинах Mac OS X 10.5 (еще не обновил ни один из моих нескольких маков до 10.6), у меня есть поставляемый Apple 2.5, 2.4 на стороне, чтобы поддержать некоторые старые проекты, которые не стоят усилий для обновления, последние версии 2.6 для новых вещей, 3.1, а также для получения самого нового - все они живут вместе в покое и в тишине, я просто напечатаю номер выпуска явно, то есть используя python2.6 в приглашении, когда я хочу конкретную версию. Какой выпуск используется, когда в приглашении оболочки вы просто скажете python зависит от вас (я лично предпочитаю, чтобы это означало "системный Python", но это вопрос вкуса: путем установки путей или псевдонимов оболочки, и amp;; c, вы можете заставить это означать все, что пожелаете).

Ответ 3

Могу ли я предложить оставить "По умолчанию" и установить Python в /usr/local/bin.

  • Загрузить python
  • Разархивируйте его
  • ./Configure
  • сделать
  • sudo make install

сделано.

Так как /usr/local/bin находится перед /usr/bin в $PATH, вы будете вызывать 2.6 при вводе python, но ОС останется стабильной...

Ответ 4

У вас есть несколько вариантов

  • Установить с MacPorts или Fink, например:

    sudo port install python2.6
    
  • Установить с образа диска из python.org
  • Установить из источник:

    tar xzvf Python-2.6.3.tgz
    cd Python-2.6.3
    ./configure && make && sudo make install
    

Ответ 5

Лучше всего использовать macports (так же, как сказал Адам Розенфилд в этой теме).

Вы можете легко переключаться между версиями Python с помощью механизма выбора макросов:

$ sudo port select --set python pythonXY

Чтобы просмотреть список доступных версий Python, вы можете использовать выше и/или подтвердить, какой из них вы используете:

$ sudo port select --list python

Чтобы установить новую версию Python:

$ sudo port install pythonXY

Ответ 6

Стандартная http://python.org установка для Mac OSX будет радостно сосуществовать с "системным python". Если вы позволите установщику изменить ваши пути, когда вы запустите python из приглашения в терминале, он найдет версию в

 /Library/Frameworks/Python.framework/Versions/2.6/bin/python

Однако это не будет мешать тому, что OSX сам делает с python, который корректно прокладывает путь к версии, которую он устанавливает.

Ответ 7

Я считаю, что есть несколько вариантов. Единственное, что мне нравится - это установить альтернативное программное обеспечение UNIX на своих компьютерах Mac с помощью MacPorts, http://www.macports.org/ - таким образом, новое программное обеспечение установлено в другой каталог и не будет испортить что-либо в зависимости от установленной на Apple версии, а macports также имеет хороший способ обновить установленное программное обеспечение. Я считаю, что MacPorts также помогает заботиться о зависимостях.