Penso che chiunque abbia scritto codice conosca NetBeans e lo abbia apprezzato (o odiato...). In questa pagina verrà mostrato come utilizzarlo per scrivere e debugguare codice C per RaspberryPi utilizzando un normale PC.
Perché non si installa NetBeans direttamente sul Raspberry:
I presupposti:
In Services occorre selezionare C/C++ Build Host con il tasto destro e aggiungere il Raspberry PI, specificando l'IP o il FQDN. Verrà richiesto il nome utente (in genere pi) e la password (se non si è scelto di usare chiavi pubbliche)
Automaticamente verranno individuati la piattaforma e i tools già installati su Raspberry PI. Questa operazione è piuttosto lunga. In particolare viene creata una copia degli header file nella cartella .cache/netbeans/8.1/remote-files/192.168.111.22_22_pi/ (o simile). Se dovessero essere installate o rimosse librerie occorre aggiornare tale elenco; il modo più semplice, ed anche l'unico che ho trovato, è quello di terminare Netbeans e quindi cancellare tale directory: al riavvia verrà ricreata con gli aggiornamenti.
Come metodo di accesso ai file consiglio di scegliere SFTP per evitare di dover installare su Raspberry PI i server relativi.
A questo è punto siamo pronti alla creazione di un nuovo progetto, con l'unica avvertenza di specificare che il programma non dovrà essere compilato ed eseguito sul PC, ma sul Raspberry
Il primo programma può essere scritto senza particolari avvertenze. Al momento della compilazione e dell'esecuzione, i file, inizialmente presenti sul PC, verranno trasferiti su Raspberry PI, in una directory nascosta, non facilissima da trovare, e contenente i nomi e gli indirizzi di tutte le macchine e gli utenti coinvolti. Per esempio: ~/.netbeans/remote/192.168.111.18/vv-hp17-Linux-x86_64/home/vv/NetBeansProjects/Test_Rpi/
Se volete usare il terminale durante il debug (cose direi assolutamente comoda...) è necessario attivare tra le proprietà del progetto Run → Console Type → Standard Output.
Inoltre, prima di usare una printf(), disattivare il buffering con la funzione:
setbuf(stdout, NULL); // disable buffering on stdout
Per usare le libreria wiringPI sono necessari due accorgimenti:
Per le considerazioni generali, fate riferimento alla pagina MySQL / MariaDB, in particolare al termine.
Per il settaggio dei flag `mysql_config --cflags --libs` fate riferimento all'immagine precedente.
Data di creazione di questa pagina: 7 gennaio 2017
Ultima modifica: 23 maggio 2018
Il taccuino tecnico - Permanentemente in fase di riscrittura
Copyright 2013-2024, Vincenzo Villa (https://www.vincenzov.net)
Quest'opera è stata rilasciata con licenza Creative Commons | Attribuzione 4.0 Internazionale (CC BY 4.0)