compilateur g++ drapeau pour minimiser la taille du binaire

Je suis un Arduino Uno R3. Je suis en train de faire des objets logiques pour chacun de mes capteurs à l'aide de C++. L'Arduino est très limitée sur la carte mémoire de 32 ko*, et, en moyenne, mes objets compilés sont à venir autour de 6KB*.

Je suis déjà en utilisant le plus possible des types de données nécessaires, dans une tentative de réduire mon empreinte mémoire. Est-il un compilateur drapeau afin de réduire la taille du binaire, ou dois-je utiliser plus courte de la variable et la fonction des noms, des fonctions, etc. afin de minimiser mon code de base?

Aussi, toutes les autres astuces ou conseils pour réduire la taille du binaire serait appréciée.

*Il ne peut pas être mesurée en KO (que je n'ai pas l'avoir en face de moi), mais 1 objet est d'environ 1/5 de ma totale de la taille de la mémoire, ce qui suscite mon inquiétude.

gcc-o3 , -o2 O pour optimiser
Non... -O3 fera binaires plus en général.
La gcc avec l'option optimiser pour la taille est -Os. Vous pouvez également strip les symboles pour vos binaires après la liaison.
c'est -Os
La vitesse d'exécution et la taille du binaire ne sont pas nécessairement corrélés. Des choses comme le déroulement de la boucle et de fréquentes inline peut rendre le programme plus rapide, mais l'augmentation de la taille des fichiers binaires...

OriginalL'auteur Zak | 2013-03-09