Nell'ordine:
1) Se vuoi provare a compilare qualche programma ti suggerisco di iniziare da quelli più semplici. Le modalità sono riportate all'interno del file Readme (o simili) presente, in genere, in tutti i pacchetti.
2) Vi sono diversi modi per procedere alla compilazione: in buona parte casi nei pacchetti sorgenti ci si affida agli Autotools (tipica dinamica:
configure --opzioni seguito da
make e
make install, quest'ultimo in genere installa sempre in
/usr/local/* ), ma non mancano altre modalità come
cmake ed altri (in funzione anche del linguaggio utilizzato!). In genere un discorso a parte meritano altri pacchetti con linguaggio interpretato (ad esempio in Python) e/o loro "combinazioni";
3) Per poter utilizzare (presumo tu intenda voler creare qualche interfaccia grafica) il tool GTK la prima cosa è sapere cosa ti mette a disposizione il pacchetto, altrimenti detto andare direttamente alla fonte con associati esempi:
https://developer.gnome.org/gtk3/stable/gtk-getting-started.htmlper poi personalizzare la GUI (l'interfaccia grafica) secondo le proprie esigenze.
NOTA: il link agli esempi come puoi ben vedere è sulle gtk3. Se vuoi seguire quegli esempi assicurati che sia installato l'associato pacchetto contenente i file degli header altrimenti nel momento in cui tenti la compilazione riceverai una marea di errori. In sostanza devi installare il pacchetto che segue (ho trovato il nome previa ricerca perché non uso Ubuntu, ma tu puoi aiutarti con il gestore dei pacchetti Synaptic per questo e altri pacchetti che ti dovessero occorrere):
sudo apt-get install libgtk-3-devProbabilmente si tirerà dietro un certo numero di dipendenze in funzione dello stato di installazione della distribuzione: è ovvio che si dovranno accettare le dipendenze al fine di procedere all'installazione.