ITA - Python2: environment-modules
October 2020 (167 Words, 1 Minutes)
Introduzione
Nei giorni scorsi mi è capitato di dover utilizzare un applicazione che richiede python2 come interprete di defaulut nel env, quindi avevo bisogno di arrivare a un output del genere:
$ python --version
Python 2.7.18
ma come sappiamo in questo periodo python2 sta cadendo in disuso e molte distribuzioni linux non lo stanno più includendo di default sul sistema. Di seguito una delle possibili soluzioni al problema.
python2 con environment-modules
Installazione
Per prima cosa procedere all’installazione di python2, su ArchLinux si procede con il seguente comando:
$ pacman -S python2
Per avere un overview su environment-modules vi consiglio di leggere questo articolo, per installarlo consiglio di usare un AUR helper e installare il seguente pacchetto env-modules-tcl.
Configurazione
Arriviamo adesso al punto cruciale, i passi da eseguire sono:
- la creazione dei link e delle cartelle per python
- creazione del file di modulo
Python2 files
Iniziamo a creare la cartella
$ mkdir ~/.local/usr/python2
$ ln -s /usr/bin/python2 ~/.local/usr/python2/python
$ ln -s /usr/bin/python2-config ~/.local/usr/python2/python-config
Creazione del file di modulo
Controllare la propria configurazione di modules :
$ echo $MODULEPATH
/home/<user>/.local/modulefiles:/etc/modules/modulefiles
per il mio utente la cartella dei moduli è ~/.local/modulefiles
, quindi andrò a creare il file ~/.local/modulefiles/python2
con il seguente contenuto:
#%Module1.0#####################################################################
##
## python2 modulefile
##
prepend-path PATH ~/.local/usr/python2/
Esempio di prova
Di seguito un esempio d’uso:
$ module avail # questo comando lista i moduli dispinibili
-------------------------- ~/.local/modulefiles -----------------------
python2
$ module list # questo comando lista i moduli caricati
No Modulefiles Currently Loaded.
$ python --version # controllo la versione di python disponibile
Python 3.8.6
$ module load python2 # carico il modulo python2
$ module list # controllo i moduli caricati
Currently Loaded Modulefiles:
1) python2
$ python --version # controllo la versione di python disponibile
Python 2.7.18
Riferimenti
Quest'opera è distribuita con Licenza Creative Commons Attribuzione - Condividi allo stesso modo 4.0 Internazionale Theme Moonwalk