doc:appunti:prog:python27_on_debian6
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
doc:appunti:prog:python27_on_debian6 [2019/05/22 16:36] – [Ricollocazione dell'installazione] niccolo | doc:appunti:prog:python27_on_debian6 [2021/10/09 17:49] (current) – niccolo | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Backport di Pyhton | + | ====== Backport di Python |
===== Su Debian 6 Squeeze ===== | ===== Su Debian 6 Squeeze ===== | ||
Line 10: | Line 10: | ||
< | < | ||
- | apt-get install git gcc build-essential \ | + | apt-get install |
| | ||
| | ||
Line 16: | Line 16: | ||
</ | </ | ||
- | Questa è l' | + | ==== Installazione in $HOME utente ==== |
+ | |||
+ | :!: **ATTENZIONE**: | ||
< | < | ||
curl -L https:// | curl -L https:// | ||
> pyenv-installer | > pyenv-installer | ||
+ | export USE_GIT_URI=' | ||
cat pyenv-installer | bash | cat pyenv-installer | bash | ||
</ | </ | ||
+ | |||
+ | ==== Installazione in / | ||
Più opportunamente si può usare una **directory di sistema**, pur eseguendo il tutto da **utente non privilegiato**. L' | Più opportunamente si può usare una **directory di sistema**, pur eseguendo il tutto da **utente non privilegiato**. L' | ||
Line 35: | Line 40: | ||
cat pyenv-installer | bash | cat pyenv-installer | bash | ||
</ | </ | ||
+ | |||
+ | ==== Utilizzo di pyenv ==== | ||
Dopo aver installato il tool pyenv è necessario inizializzare l' | Dopo aver installato il tool pyenv è necessario inizializzare l' | ||
Line 58: | Line 65: | ||
</ | </ | ||
- | Dopo avere settato queste variabili è possibile installare librerie con il gestore **pip** | + | Dopo avere settato queste variabili è possibile installare librerie con il gestore **pip**. Resta il problema del download automatico via https, per aggirarlo è necessario fare il download del pacchetto da un altro host e quindi eseguire **pip install nomefile.tar.gz**. |
- | ==== Ricollocazione dell' | + | ==== Ricollocazione dell' |
La directory '' | La directory '' | ||
Line 68: | Line 75: | ||
* lib/ | * lib/ | ||
+ | ==== Problema con pip e ssl ==== | ||
+ | |||
+ | Con l' | ||
+ | |||
+ | < | ||
+ | pip search openpyxl | ||
+ | ... | ||
+ | SSLError: [SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c: | ||
+ | </ | ||
+ | |||
+ | Ovviamente viene a mancare anche **la gestione delle eventuali dipendenze** (download e install automatico). La soluzione è scaricare gli archivi necessari e copiarli in una directory locale prima di fare l' | ||
+ | |||
+ | * **[[https:// | ||
+ | * **[[https:// | ||
+ | * **[[https:// | ||
+ | |||
+ | Gli archivi di tipo **.tar.gz** vanno scompattati, | ||
+ | |||
+ | < | ||
+ | pip install / | ||
+ | pip install / | ||
+ | pip install / | ||
+ | </ | ||
===== Su Fedora 12 ===== | ===== Su Fedora 12 ===== | ||
Line 108: | Line 138: | ||
eval " | eval " | ||
export PYENV_VERSION=2.7.13 | export PYENV_VERSION=2.7.13 | ||
- | exec python $@ | + | exec python |
</ | </ | ||
Line 121: | Line 151: | ||
===== Installazione con pip ===== | ===== Installazione con pip ===== | ||
- | Il comando **pip** può essere usato per installare le librerie necessarie nell' | + | Il comando **pip** può essere usato per installare le librerie necessarie nell' |
Alcuni comandi utili: | Alcuni comandi utili: | ||
^ pip list | Elenca i pacchetti installati tramite il sistema pip. | | ^ pip list | Elenca i pacchetti installati tramite il sistema pip. | | ||
+ | ^ pip freeze | ||
^ pip search package | ^ pip search package | ||
^ pip install package | ^ pip install package | ||
- | ^ pip FIXME | Rimuove un pacchetto installato. | + | ^ pip install / |
+ | ^ pip uninstall package | ||
- | Se non è possibile scaricare il pacchetto dai repository | + | Per vedere **quali moduli installati da pip sono disponibili |
< | < | ||
- | pip install | + | import |
+ | pip.get_installed_distributions(local_only=True) | ||
+ | [ setuptools 28.8.0 (/ | ||
+ | pip 9.0.1 (/usr/local/lib/ | ||
+ | openpyxl 2.4.9 (/ | ||
+ | jdcal 1.3 (/ | ||
+ | et-xmlfile 1.0.1 (/ | ||
+ | ] | ||
</ | </ | ||
- | La directory che contiene la distribuzione deve contenere il file **setup.py**. | + | Si ottiene l' |
- | Per vedere quali moduli (e le rispettive versioni) sono stati installati da pip, eseguire in Python: | + | **ATTENZIONE**: L' |
< | < | ||
- | import | + | pip list |
- | pip.get_installed_distributions(local_only=True) | + | et-xmlfile (1.0.1) |
+ | jdcal (1.3) | ||
+ | openpyxl (2.6.2, / | ||
+ | Pillow (5.4.1, / | ||
+ | pip (9.0.1) | ||
+ | setuptools | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | pip freeze | ||
+ | et-xmlfile==1.0.1 | ||
+ | jdcal==1.3 | ||
+ | openpyxl==2.6.2 | ||
+ | Pillow==5.4.1 | ||
+ | </ | ||
+ | |||
+ | Se i due elenchi differiscono potrebbe dipendere dal fatto che il pyenv non ha impostato correttamente le variabili d' | ||
+ | |||
+ | ===== Aggiornamento libreria con pip ===== | ||
+ | |||
+ | È possibile installare una versione aggiornata di una libreria tramite pip, disinstallando eventualmente il pacchetto Debian che contiene la vecchia versione. Ad esempio: | ||
+ | |||
+ | < | ||
+ | dpkg --purge python-openpyxl | ||
+ | pip install openpyxl | ||
</ | </ | ||
doc/appunti/prog/python27_on_debian6.1558535814.txt.gz · Last modified: 2019/05/22 16:36 by niccolo