Как мне обновить python 2.5.2 до python 2.6rc2 в ubuntu linux 8.04?

Я хотел бы узнать, как обновить установку python по умолчанию (2.5.2), поставляемую с ubuntu 8.04, до python 2.6rc2. Я хотел бы сделать 2.6 версией python по умолчанию в системе и перенести все другие полезные установленные библиотеки python, установленные на 2.5.2, на python 2.6rc2. Пожалуйста, дайте мне знать, как я могу этого добиться.

Спасибо Дирк

Заменять установку Python по умолчанию - действительно плохая идея. Просто установите python 2.6 отдельно в другой каталог.

nosklo 27.09.2008 06:30
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
8
1
31 406
4
Перейти к ответу Данный вопрос помечен как решенный

Ответы 4

Ответ принят как подходящий

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

Сначала установите 2.6rc2. Вы можете скачать исходник с сайта Веб-сайт Python. Стандартный стиль установки ./configure && make && sudo make install.

Затем удалите символическую ссылку /usr/bin/python. Удалите нет/usr/bin/python2.5. Добавьте символическую ссылку на 2.6 с ln -s /usr/local/bin/python2.6 /usr/bin/python.

Еще раз считаю, что это ужасная идея. Почти наверняка есть лучший способ делать то, что вы пытаетесь достичь.


Перенос установленных библиотек - гораздо более длительный процесс. Посмотрите каталоги /usr/lib/python2.5/site-packages/ и /usr/local/lib/python2.5/site-packages/. Все установленные в них библиотеки необходимо будет переустановить с 2.6. Поскольку вы не используете упакованную версию Python, вы не можете использовать пакеты Ubuntu - вам придется вручную обновить все библиотеки. Большинство из них, вероятно, можно установить с помощью sudo easy_install <name>, но некоторые, такие как PyGTK +, не так просты. Для каждой такой библиотеки вам нужно будет выполнить процедуры выборочной установки.

не будут ли параметры компиляции по умолчанию просто добавить его в / usr / local / bin (который он затем мог бы переименовать в python26), оставив символическую ссылку / usr / bin, указывающую на python2.5?

unmounted 27.09.2008 07:09

В сценариях оболочки обычно используется #! / Usr / bin / python, а не #! / Usr / bin / env python. Потому что в этом случае ссылку в / usr / bin необходимо заменить.

John Millikin 27.09.2008 07:23

На самом деле, правильный способ (если вы ориентируетесь на конкретную версию) - #! / Usr / bin / env python2.6

Jeremy Cantrell 19.04.2009 17:53

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

John Millikin 19.04.2009 23:20

В этом есть необходимость?

Ubuntu, как правило, не упаковывает релизы RC. 2.6 не будет доступна в Ubuntu до Jaunty Jackalope.

Однако, если вы настаиваете на его установке, вам придется сделать это без диспетчера пакетов.

Загрузите пакет и разархивируйте его в каталог

выполните следующие команды (ожидая, пока каждая из них закончит, когда вы это сделаете)

./configure
make
sudo make install

Вот он у вас установлен.

Лучше сначала подождать, пока он будет упакован, особенно потому, что Python используется во многих внутренних компонентах Ubuntu, поэтому может ужасно сломать вашу систему.

Было бы неразумно менять версию Python по умолчанию, то есть то, что вы получаете, когда вводите «python» в оболочку. Однако у вас может быть установлено несколько версий python. Уловка состоит в том, чтобы убедиться, что программа с именем "python" в пути является версией, поставляемой системой. Если вы хотите запустить установку Python 2.6, вам нужно ввести python2.6 в оболочку, чтобы запустить ее.

Загрузите пакет и разархивируйте его, затем запустите:

./configure
make
sudo make install
ls -l /usr/local/bin

Вы должны увидеть файлы python и python2.6, созданные в день запуска make install; удалите файл python. Затем при запуске python будет запущена стандартная системная версия Python из /usr/bin, а при запуске python2.6 вы получите свой новый блестящий python 2.6rc2. Python отображает версию при запуске интерактивного интерпретатора.

У меня такая же проблема, и, по-видимому, здесь можно найти готовые двоичные файлы:

# Python 2.6
deb http://ppa.launchpad.net/doko/ubuntu intrepid main
deb-src http://ppa.launchpad.net/doko/ubuntu intrepid main

Добавил эти строки в мой /etc/apt/sources.list и выпустил sudo apt-get update && sudo apt-get install python2.6, который вернул следующее: The following packages have unmet dependencies: python2.6: Depends: libsqlite3-0 (>= 3.5.9) but 3.4.2-2 is to be installed. Не вдаваясь в подробности, похоже, что это будет довольно долгий процесс, который может нарушить работу других пакетов и зависимостей. По крайней мере, на Ubuntu 8.04.

Ben Keating 30.03.2011 21:14

Другие вопросы по теме