====== Raspberry Pi openFrameworks ====== ===== openFrameworks ===== Ce tutoriel présente l'installation d'openFrameworks 0.12.0 sur une RaspberryPi 4. Il se base sur celui fourni sur [[http://openframeworks.cc/setup/raspberrypi/Raspberry-Pi-Getting-Started.html|openFrameworks]]. Avant de commencer, il est nécessaire d'installer et de [[Raspberry_Pi_Installation|configurer sa Raspberry Pi]] avec la dernière version de Raspberry Pi OS (64-bit) Lite. ==== Télécharger openFrameworks ==== Ces commandes vont télécharger et décompresser l'archive dans le répertoire /home/pi/openFrameworks Il faut télécharger la version aarch64 d'openFrameworks pour un système en 64 bits. cd wget https://github.com/openframeworks/openFrameworks/releases/download/0.12.1/of_v0.12.1_linuxaarch64_release.tar.gz mkdir openFrameworks tar vxfz of_v0.12.1_linuxaarch64_release.tar.gz -C openFrameworks --strip-components 1 ==== Compilation d'OpenFrameworks ==== Des librairies supplémentaires sont nécessaires pour pouvoir compiler correctement OpenFrameworks. cd /home/pi/openFrameworks/scripts/linux/debian sudo ./install_dependencies.sh Pour une Raspberry 4 il faut installer le système de fenêtrage X11 : sudo apt-get install xorg Enfin compiler openFrameworks avec : make Release -C /home/pi/openFrameworks/libs/openFrameworksCompiled/project ==== Compilation d'un exemple ==== cd /home/pi/openFrameworks/examples/graphics/polygonExample make Pour une RPI4 cette commande vous permet d'exécuterer l'exemple dans une fenêtre de X11. startx ./bin/polygonExample -- -s off ==== Compilation du premier projet ==== Pour commencer un projet, il faut copier la structure d'un projet vide dans un nouveau répertoire. cp -R /home/pi/openFrameworks/apps/myApps/emptyExample /home/pi/openFrameworks/apps/myApps/premierProjet cd /home/pi/openFrameworks/apps/myApps/premierProjet make startx ./bin/premierProjet -- -s off Il faut garder en mémoire que le répertoire de l'application doit être un sous-réperoire d'un sous-répertoire du répertoire openFrameworks. ===== Utilisation des addons ===== Si vous utilisez des addons, il faut indiquer au compilateur lesquels. Pour cela il faut modifier le fichier addons.make. S'il n'existe pas il sera créé. Il faut le placer dans le répertoire de votre projet au même niveau que config.make : cd /home/pi/openFrameworks/apps/myApps/premierProjet sudo nano addons.make Ajoutez le nom des addons que vous souhaitez utiliser par exemple : ofxXmlSettings ofxOsc Puis ctrl-O pour sauvegarder en validant, puis ctrl-x pour quitter. ===== Gestion du GPIO ===== La bibliothèque wiringPi est idéale pour gérer le GPIO avec OpenFrameworks. ==== Téléchargement et installation de la librairie ==== Afin d'obtenir la librairie, taper : cd wget https://github.com/WiringPi/WiringPi/releases/download/3.10/wiringpi_3.10_arm64.deb Ensuite installer la librairie : sudo apt install ./wiringpi_3.10_arm64.deb Pour tester que tout fonctionne bien : gpio -v gpio readall La liste des fonctionnalités est disponible sur le [[http://wiringpi.com|site]] du dévellopeur. ==== Compilation ==== Il est nécessaire d'indiquer au compilateur la présence de la librairie wiringPi. Pour cela, il faut éditer le fichier config.make de l'application en cours de développement : sudo nano config.make et ajouter la dernière ligne dans les PROJECT LINKER FLAGS : ################################################################################ # PROJECT LINKER FLAGS #       These flags will be sent to the linker when compiling the executable. # #               (default) PROJECT_LDFLAGS = -Wl,-rpath=./libs # #   Note: Leave a leading space when adding list items with the += operator # # Currently, shared libraries that are needed are copied to the # $(PROJECT_ROOT)/bin/libs directory.  The following LDFLAGS tell the linker to # add a runtime path to search for those shared libraries, since they aren't # incorporated directly into the final executable application binary. ################################################################################ #PROJECT_LDFLAGS=-Wl,-rpath=./libs PROJECT_LDFLAGS += -lwiringPi Ctrl-o pour sauvegarder et Ctrl-x pour quitter ==== Configuration de la Raspberry ==== Pour utiliser le port série du GPIO il est nécessaire de désactiver la console série. ==== Démarrer un programme au démarrage pour une Raspberry Pi 4 ==== Ouvrir le fichier bashrc sudo nano /home/pi/.bashrc Se positionner tout à la fin et copier les lignes suivantes : # startx if it isn't already running XPID=`/usr/bin/pgrep Xorg` if [[ -z $XPID ]] then cd openFrameworks/apps/myApps/Dialogues startx ./bin/Dialogues -- -s off fi Puis ctrl-O pour sauvegarder en validant, puis ctrl-x pour quitter. Le programme lancé se nomme Dialogues {{tag>sylvain openFrameworks raspberry_pi}}