¿Python2.7 estará disponible para 10.04 en el futuro?


27

Dado que Ubuntu 10.04 es una versión LTS, ¿admitirá python 2.7 como una versión de mantenimiento de paquetes predeterminada o al menos tendrá un paquete python2.7 en el futuro?

Dado que será la última versión importante de python 2.x y está destinada a permanecer en su lugar durante mucho tiempo, decidí usarla. Lo compilé desde la fuente (después de construir departamentos, por supuesto) pero de vez en cuando encuentro pequeños problemas.

¿Es seguro definir mi python 2.7 compilado como predeterminado, ya que hay algunas aplicaciones de distribución que funcionan en python?

Respuestas:


16

No, no se considera seguro definir 2.7 como su intérprete de Python predeterminado en Lucid . Y no creo que sea en el futuro.

  • No hay actualizaciones importantes de la versión de ningún software en una versión.

    Entonces python2.7 no reemplazará 2.6 como el intérprete predeterminado. Este tipo de actualización solo se realiza entre versiones, dentro de una, especialmente una LTS, solo hay actualizaciones de lanzamiento estable, es decir, correcciones de errores y actualizaciones relacionadas con la seguridad.

Sin embargo, es perfectamente seguro usar python2.7, definiendo su intérprete como #!/usr/bin/python2.7y haciendo que los usuarios lo instalen usando make altinstallla fuente de python, junto con python2.6


41

Tuve el mismo problema con un VPS que no se puede actualizar a Maverick (incluso las nuevas imágenes LTS no siempre están disponibles a tiempo). La respuesta de Marius hizo el truco para ayudarme a comenzar, pero debería ampliarse:

Agregue el PPA a sus fuentes

Si estás en mi situación, el simple consejo de correr add-apt-repositoryno funcionará para ti. Así que hagamos esto a la antigua usanza:

  1. Abra el archivo /etc/apt/sources.list(necesita privilegios de root; si está en el shell, esto probablemente significa ejecutar sudo vim /etc/apt/sources.list).

  2. Vaya hasta el final del archivo (si está usando vim, cambie al modo de inserción presionando i) y agregue las siguientes líneas:

    deb http://ppa.launchpad.net/fkrull/deadsnakes/ubuntu lucid main 
    deb-src http://ppa.launchpad.net/fkrull/deadsnakes/ubuntu lucid main 
  3. Guarde y salga (en vim: tipo :wq) y regrese a un shell.

  4. Ingrese lo siguiente (puede encontrar la clave correcta en el PPA ; es la parte después de la barra oblicua en los "detalles técnicos" - asegúrese de obtener la correcta):

    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys DB82666C
  5. Ahora ingrese lo siguiente para actualizar su lista de fuentes:

    sudo apt-get update

Instalar y configurar Python 2.7

  1. Abra un shell en su servidor e ingrese lo siguiente:

    sudo apt-get install python2.7 python2.7-dev
  2. Para comenzar a easy_installtrabajar, obtenga el distributescript bootscrap:

    curl -O http://python-distribute.org/distribute_setup.py
    python2.7 distribute_setup.py
  3. Finalmente, quieres pipy virtualenvtrabajar si planeas hacer algo serio:

    easy_install-2.7 pip
    pip-2.7 install virtualenv

Configurar un virtualenv

  1. Cree la carpeta para su nuevo entorno y ábrala:

    mkdir my_env && cd my_env
  2. Cree el entorno virtual en sí (el punto indica que el directorio actual es la ubicación del entorno, reemplácelo con la ruta correcta si omitió el paso anterior):

    virtualenv --no-site-packages --python=python2.7 .
  3. Activar el medio ambiente. Notará que el indicador de shell cambia para reflejar el entorno activo:

    source bin/activate
  4. Cualquier cosa que haga en este shell ahora usará los scripts en la bincarpeta del entorno virtual y los paquetes de Python de ese entorno. Tenga en cuenta que la opción --no-site-packagessignifica que está comenzando con el conjunto mínimo de paquetes (incluidos pip, sin embargo), por lo que debe instalar todos los paquetes que necesitará.

  5. Cuando haya terminado, desactive el entorno (este es un comando reconocido por el entorno activo):

    deactivate

También puede instalar paquetes en el entorno virtual pasando la -Eopción a pip(por ejemplo, pip install some-package -E /path/to/virtual/environmentinstalar some-packageen el entorno virtual en la ruta dada). Tenga en cuenta que tendrá varias versiones diferentes pipcorrespondientes a las diferentes versiones de Python instaladas.

Es una buena idea usar pip-2.7si desea instalar paquetes para Python 2.7 cuando trabaje fuera de un entorno virtual (la --python=python2.7opción a la que pasamos virtualenvsignifica que el entorno virtual usará las versiones de Python 2.7 de las herramientas que proporciona, por lo que no tiene que hacerlo). preocuparse por eso).


1
En mi caso, ya había instalado pip para 2.6, y tuve easy_install-2.7 -U pipque forzar la instalación de la versión 2.7. Pero gracias, esta es una gran ayuda!
Gabe Moothart

2
Para el paso 2 en "Instalar y configurar Python 2.7" tuve que hacer wget --no-check-certificate https://bootstrap.pypa.io/ez_setup.py -O - | sudo python2.7. Y luego obtener pip sudo python2.7 -m easy_install pipseguido de sudo python2.7 -m easy_install --upgrade pip. La opción --no-check-certificate fue necesaria para superar una queja de wget sobre el certificado SSL. (Ver pypi.python.org/pypi/setuptools#unix-wget )
zlovelady


2

Esto resolvió todo tipo de problema que tenía /programming/7561221/undefined-symbol-pyobject-nextnotimplemented-error-when-loading-psycopg2-modu .

Ahora se libpython2.7.so.1.0está vinculando a mi python2.7, etc., todo parece ser más feliz.

La última pieza que necesitaba para resolverlo fue la mod_wsgiinstalación. Si simplemente emite:

$ apt-get install libapache2-mod-wsgi

Entonces esto se compilará para Python2.6 :(

$ ldd /usr/lib/apache2/modules/mod_wsgi.so

libpython2.6.so.1.0 => /usr/lib/libpython2.6.so.1.0 (0x00178000)

Así que seguí las instrucciones proporcionadas por Gork-Zope aquí .

Finalmente tengo un servidor que funciona. Gracias.


1

No lo creo, ya que tendrá que cambiar muchos de los programas y bibliotecas asociados con la versión 10.04. En realidad, gran parte del trabajo en Ubuntu se realiza utilizando una versión específica de Python. Cambiarlo a Python cambiaría muchos archivos del sistema.

Para 10.10 está disponible desde synaptic / aptitude simplemente instalando python2.7 (también puede instalar 3 y 3.1), pero para 10.04 no hay trabajo realizado para 10.04.

10.10 tiene python 2.6 como predeterminado. Lo siento si la respuesta no fue positiva, pero solo quería darle una idea de los cambios.

EDITAR: cambió Python 2.7 a Python 2.6 de forma predeterminada, ya que se verificó dos veces en los comentarios a continuación. Gracias.


Acabo de retirar 10.10 en la caja virtual, tiene Python 2.6.6 por defecto, aunque hay 2.7 paquetes disponibles para Maverick. Creo que es 11.04 que lo tiene por defecto. En general, sigo actualizando y cambiando distribuciones, pero estaba considerando mantenerme en 10.04, por su soporte a largo plazo y mis personalizaciones.
crodjer

sí, 11.04 tiene 2.7 por defecto desde hace unos días
Stefano Palazzo
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.