Ambiente di sviluppo
Per chi non ha una istallazione Linux (nativa o VM) è possibile riprodurre un ambiente identico a quello utilizzato nelle lezioni tramite una immagine docker. Ecco come fare:
Installare Docker dal sito ufficiale: https://docs.docker.com/get-docker/
Eseguire l’immagine (il download avviene automaticamente)
docker run -it --rm ghcr.io/matteospanio/cdev:latest bash
In questo modo si ottiene una shell dentro un’immagine ubuntu linux in cui sono installati gcc e altri strumenti di sviluppo
Se ti sembra scomodo eseguire il comando del punto 2 puoi scaricare l’applicazione python cdev-cli e avviare l’immagine con meno sforzo.
Strumenti installati nell’immagine docker
Tra i principali programmi installati nell’immagine docker ci sono:
gcc
eg++
per compilare i programmi in C e C++make
per automatizzare la compilazionegit
per gestire i sorgentivim
, un editor di testo minimalevalgrind
per analizzare i programmigdb
per il debugpython3
per eseguire script pythonman
, il manuale di riferimento per i comandi linux
Condividere una cartella tra il sistema host e l’immagine docker
Per condividere una cartella tra il sistema host e l’immagine docker è possibile utilizzare l’opzione -v
di docker. Ad esempio:
docker run -it --rm -v /path/to/my/folder:/mnt ghcr.io/matteospanio/cdev:latest bash
Questo comando permette di montare la cartella /path/to/my/folder
all’interno dell’immagine docker nella cartella /mnt
. In questo modo è possibile condividere i file tra il sistema host e l’immagine docker. Dall’interno dell’ambiente docker è possibile andare alla cartella /mnt
con il comando cd /mnt
, in questa directory saranno presenti i file della cartella /path/to/my/folder
del sistema host. Ciò comporta che le modifiche ai file condivisi saranno visibili sia dal sistema host che dall’immagine docker e permanenti.
I file creati nell’ambiente docker e le modifiche fatte al sistema operativo dell’immagine docker, di default, non sono permanenti.
L’applicazione cdev-cli
semplifica il processo di avvio dell’immagine docker e la condivisione di una cartella tra il sistema host e l’immagine docker, in particolare permette di avviare l’immagine docker con un comando e di condividere la cartella corrente del sistema host con l’immagine docker. Eseguendo il comando cdev-cli
da una determinata cartella nel sistema host si avvia l’immagine docker e si condivide la cartella corrente con l’immagine docker alla posizione /mnt
.
Metodi alternativi
- Per chi ha un sistema operativo MacOS o Linux basta installare gcc.
- In Windows è possibile utilizzare WSL 2, un sistema simile a docker per integrare direttamente Ubuntu in Windows.