Bandera del compilador g ++ para minimizar el tamaño binario

Tengo un Arduino Uno R3. Estoy haciendo objetos lógicos para cada uno de mis sensores usando C ++. El Arduino tiene una memoria interna muy limitada de 32KB * y, en promedio, mis objetos compilados salen alrededor de 6KB *.

Ya estoy usando los tipos de datos más pequeños posibles, en un intento de minimizar mi huella de memoria. ¿Hay un indicador de compilador para minimizar el tamaño del binario, o necesito usar nombres de funciones y variables más cortos, menos funciones, etc. para minimizar mi base de código?

Además, se agradecería cualquier otro consejo o consejo para minimizar el tamaño binario.

* Es posible que no se mida en KB (ya que no lo tengo sentado frente a mí), pero 1 objeto es aproximadamente 1/5 de mi tamaño total de memoria, lo que está provocando mi preocupación.

Respuestas a la pregunta(2)

Su respuesta a la pregunta