
==============================================
Nanopb est une implémentation de Protocol Buffers de petite taille en ANSI C. Elle est particulièrement adaptée aux microcontrôleurs, mais convient à tout système à mémoire limitée.
Pour utiliser la bibliothèque nanopb, vous devez faire deux choses :
La façon la plus simple de commencer est d'étudier le projet dans « examples/simple ». Il contient un Makefile, qui devrait fonctionner directement sur la plupart des systèmes Linux. Cependant, pour tout autre type de système de build, voir les étapes manuelles dans README.txt dans ce dossier.
Le générateur nanopb est implémenté comme un plugin pour le compilateur protoc de Google. Cela a l'avantage qu'il n'est pas nécessaire de réimplémenter l'analyse de base des fichiers .proto. Cependant, cela signifie que vous avez besoin de la bibliothèque protobuf de Google pour exécuter le générateur.
Si vous avez téléchargé un paquet binaire pour nanopb (version Windows, Linux ou Mac OS X), le binaire 'protoc' est inclus dans le dossier 'generator-bin'. Dans ce cas, vous êtes prêt à démarrer. Exécutez simplement cette commande :
generator-bin/protoc --nanopb_out=. myprotocol.proto
Cependant, si vous utilisez un checkout git ou une distribution source simple, vous devez fournir votre propre version de protoc et la bibliothèque protobuf de Google. Sous Linux, les paquets nécessaires sont protobuf-compiler et python-protobuf. Sous Windows, vous pouvez soit compiler la bibliothèque protobuf de Google à partir des sources, soit utiliser l'une de ses distributions binaires. Dans les deux cas, si vous utilisez un protoc séparé, vous devez indiquer manuellement le chemin vers le générateur nanopb :
protoc --plugin=protoc-gen-nanopb=nanopb/generator/protoc-gen-nanopb ...
Si vous souhaitez poursuivre le développement du cœur de nanopb, ou vérifier ses fonctionnalités avec votre compilateur et votre plateforme, vous voudrez exécuter la suite de tests. Les règles de compilation de la suite de tests sont implémentées avec Scons, vous devez donc l'avoir installé. Pour exécuter les tests :
cd tests
scons
Cela montrera la progression des différents cas de test. Si la sortie ne se termine pas par une erreur, les cas de test ont réussi.
Remarque : Mac OS X par défaut crée un alias 'clang' comme 'gcc', sans pour autant prendre en charge les mêmes options de ligne de commande que gcc. Pour exécuter les tests sur Mac OS X, utilisez : "scons CC=clang CXX=clang". De la même manière, on peut exécuter les tests avec différents compilateurs sur n'importe quelle plateforme.