=== Imparando.net ===

Raylib

Sperimentale

La libreria raylib è una libreria per la grafica semplice da usare che proveremo a utilizzare quest'anno per vedere se è utile per la didattica.

Come creare un progetto - 1

Qua sotto trovate il link al template che verrà utilizzato per tutti i progetti che utilizzano questa libreria e che dovrebbe essere multipiattaforma (per Windows e Linux è stato testato). Per utilizzarlo è sufficiente copiarlo nella posizione desiderata e copiarlo ogni volta che si vuole partire con un nuovo progetto. In Clion poi occorre cambiare il nome del progetto all'interno del file CMakeLists.txt nella sezione project(nome_progetto), dove al posto di nome_progetto si mette quello che si desidera.

Come creare un progetto - 2

La modalità esposta qua sotto è molto comoda da utilizzare ed è multipiattaforma, ha però il difetto di generare un sacco di file duplicato, perchè ogni progetto rigenera tutta la libreria e quindi, dovendo fare tanti piccoli progetti, si utilizza un sacco di spazio su disco: tipicamente anche il progetto più semplice genera circa 30 MB di file. Questo non è un problema in una situazione reale in cui ci possono essere pochi progetti tutti abbastanza grossi, lo può diventare in una situazione didattica, in cui tipicamente ci sono tantissimi piccoli progetti.
Per risolvere questo problema ho creato una seconda modalità, qui spiegata solo per Windows, ma che non dovrebbe avere troppi problemi per essere adattata per Linux o Mac, che ha il vantaggio di essere estremamente leggera e evita di dover ricompilare la libreria ad ogni nuovo progetto.
Per far questo ho compilato la libreria per produrne una versione statica, il file libraylib.a che si può trovare a fondo pagina. Questo file deve essere scaricato e copiato nella cartella delle librerie del compilatore mingw-w64, che nel mio caso è C:\Program Files (x86)\mingw-w64\i686-8.1.0-posix-dwarf-rt_v6-rev0\mingw32\i686-w64-mingw32\lib. Una volta messo questo file in quella cartella basta prendere il file raylib_template_leggero.zip e procedere come con il template precedente, con la differenza che in questo caso la libreria sarà quella da me generata in precedenze e non dovrà essere ricompilata ogni volta che si creerà un nuovo progetto.

Come creare un progetto - 3

Se non si avessero invece i permessi amministrativi per poter copiare la libreria nella cartelle delle librerie del compilatore (come ad esempio succede in laboratorio), allora esiste un'ultima soluzione, sempre per Windows, che richiede di usare il file raylib_template_portable_windows.zip, che, a differenza del metodo precedente, contiene al suo interno la libreria precompilata, il che lo rende un po' più pesante del metodo precedente, ma comunque molto più leggero del metodo 1. Attenzione: siccome la libreria precompilata è dipendente dalla versione del compilatore utilizzato, se questa versione non funzionasse è dovuto alla differenza tra la versione utilizzata e il proprio compilatore: in questo caso si consiglia di utilizzare la modalità 1, che funzionerà sempre poichè ricompilerà la libreria con il proprio compilatore. La versione corrente è stata compilata il 23/09/2023.

Istruzioni aggiuntive per Linux

Sempre grazie ad Alfano abbiamo sperimentato che su Linux è necessaria l'installazione di librerie aggiuntive che difficilmente sono già presenti nella distribuzione utilizzata. Se la propria distribuzione è una Debian-like dovrebbero essere sufficiente le seguenti istruzioni

sudo apt-get install libx11-dev xorg-dev libglu1-mesa-dev
Per altre distribuzione dovrebbe essere sufficiente usare il loro sistema di pacchettizzazione e indicare quelle librerie.