GNU/Linux >> Tutoriales Linux >  >> Linux

apt-get install para diferentes versiones de python

ubuntu 10.04 no tiene un paquete python2.7. Tienes que construir 2.7 tú mismo. Leí un artículo sobre ubuntu lanzando un paquete python2.7 cuando salió 12.04 pero no estoy seguro de cuál es la ubicación del repositorio.

http://eli.thegreenplace.net/2011/10/10/instalación-python-2-7-en-ubuntu/

o:

sudo add-apt-repository ppa:fkrull/deadsnakes
sudo apt-get update
sudo apt-get install python2.7

https://askubuntu.com/questions/101591/install-python-2-7-2-on-ubuntu-10-04-64-bit

esta pregunta tiene muchas respuestas en línea.


pyenv

https://github.com/pyenv/pyenv

Pyenv le permite administrar múltiples versiones de Python sin sudo para un solo usuario, al igual que Node.js NVM y Ruby RVM.

Instalar Pyenv:

curl https://pyenv.run | bash

Luego agregue a su .bashrc :

export PATH="${HOME}/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

Encuentre la versión de Python para instalar:

pyenv install --list

Instale la versión de python que desee:

# Increase the chances that the build will have all dependencies.
# https://github.com/pyenv/pyenv/wiki/Common-build-problems
sudo apt build-dep python3
sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev \
  libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev \
  xz-utils tk-dev libffi-dev liblzma-dev python-openssl git

# Build and install a Python version from source.
pyenv install 3.8.0

Lista de versiones de Python disponibles:

pyenv versions

Ahora tenemos:

* system (set by /home/cirsan01/.pyenv/version)
  3.8.0

Seleccione una versión de Python diferente:

pyenv global 3.8.0
python --version
python3 --version

Ambas salidas:

Python 3.8.0

Ahora podemos proceder a instalar y usar paquetes normalmente:

pip install cowsay
python -c 'import cowsay; cowsay.tux("Python is fun")'
cowsay 'hello'

Podemos confirmar que todo está instalado localmente en nuestro entorno limpio con:

python -c 'import cowsay; print(cowsay.__file__)'

da:

/home/ciro/.pyenv/versions/3.8.0/lib/python3.8/site-packages/cowsay/__init__.py

y:

which cowsay

da:

/home/ciro/.pyenv/shims/cowsay

y:

which python

da:

/home/ciro/.pyenv/shims/python

Uso por proyecto

En la sección anterior, vimos cómo usar pyenv en una configuración global.

Sin embargo, lo que generalmente desea es establecer una versión específica de python y paquete por proyecto. Así es como se hace.

Primero instale la versión de Python que desee como antes.

Luego, desde el directorio de su proyecto, configure la versión de Python deseada con:

pyenv local 3.8.0

que crea un archivo .python-version que contiene la cadena de versión.

Y ahora instalemos un paquete localmente solo para nuestro proyecto:TODO:parece que no hay una forma agradable:Pyenv elige el directorio virtualenv

Ahora, cuando alguien quiera usar tu proyecto, hará lo siguiente:

pyenv local

que establece la versión de Python en la correcta.

Temas relacionados:

  • https://askubuntu.com/questions/682869/how-do-i-install-a- different-python-version-using-apt-get
  • https://unix.stackexchange.com/questions/9711/cuál-es-la-forma-adecuada-de-administrar-varias-versiones-de-python
  • apt-get install para diferentes versiones de python

Probado en Ubuntu 18.04, pyenv 1.2.15.


Python tiene sus propias instalaciones de administración de paquetes, en paralelo a las establecidas por las distribuciones de Linux (incluido Ubuntu). El repositorio es Pypi - Python Package Index, y los paquetes se instalan con pip o el script easy_install, que forma parte del paquete de herramientas de configuración de Python.

Como regla general, no debe usar los paquetes instalados a través de pip/setuptools y los paquetes disponibles para su distribución (a través de apt-get, yum, urpmi, etc.) ya que podrían entrar en conflicto.

Por lo tanto, una de las formas menos propensas a errores de lidiar con esto es tener instalaciones separadas de Python en su sistema; deje el python que vino con el sistema para los scripts del sistema y demás; en este python, use los paquetes instalados por su administrador de paquetes solamente. E instale otras versiones de Python (o incluso la misma), para que se ejecuten con "virtualenv":en estas otras instalaciones, solo instala cosas con pip/setuptools.

(E incluso si uno opta por vivir con valentía y no usar virtualenvs, instalar otra versión de python en el mismo prefijo (/usr , e incluso /usr/local ) que Python de su sistema es una fuente de errores y conflictos confusos).

Tenga en cuenta que los sistemas Debian y Ubuntu idearon una forma de ejecutar Python oficiales paralelos en /usr, y tener apt-get para instalar paquetes de Python en ambas versiones de Python a la vez. Esto funciona principalmente, pero interfieren con la jerarquía de directorios predeterminada de Python, y algunas aplicaciones no pueden usar Python de esta manera. (También es un desastre encontrar los archivos del módulo en Debian o Ubuntu). Por lo tanto, el método anterior se aplica como recomendación incluso si su sistema tiene más de una versión de Python disponible en apt-get.

En resumen, una vez que haya compilado la versión deseada de Python, haga lo siguiente:

  1. use el administrador de paquetes de su sistema para instalar "python-setuptools" y "python-virtualenv" (no estoy seguro si estos son los nombres reales de los paquetes).
  2. Utilice virtualenv para crear un entorno desde el cual usará su versión diferente de Python
  3. Active su virtualenv e instale los paquetes de Python usando pip en él.

Virtualenv presenta un interruptor "--help" para ayudarlo, pero básicamente lo hace:

$ virtualenv -p <path-to-python-interpreter>  <environment-dir>
$ source <environment-dir>/bin/activate

Y ahí está:todo lo que use Python "verá" el intérprete en el entorno virtual, debido al conjunto de variables de entorno.


Linux
  1. Cómo instalar Python en Linux

  2. Ejecute múltiples versiones de PHP para diferentes dominios en NGNIX

  3. Cómo instalar Python en Linux Mint 20

  4. Cómo instalar y cambiar versiones de Python en Ubuntu 20.04

  5. Instalar tkinter para Python

Cómo instalar Python 3 en Windows 10

Instalar python 3 en Redhat 8

Cómo instalar Setuptools para Python en Linux

Instalar PIP para Python 3 en CentOS 8

Cómo instalar diferentes versiones de PHP (5.6, 7.x y 8.0) en Ubuntu

Cómo instalar Python PIP en Ubuntu 18.04