Me gustaría escribir mis bocetos para poder compilarlos / cargarlos usando el IDE de Arduino, u opcionalmente usando GCC y un archivo MAKE.
Sé incluir las declaraciones de funciones en la parte superior, pero ¿hay algo más que hacer para que mi compilador considere válido C ++ por mi compilador?
Actualización 1
Comprender lo que el IDE de Arduino hace a los archivos .ino y .pde está bien, pero es extraño a mi pregunta, por lo que esto no es un duplicado. Lo que quiero saber es "cómo escribo un programa de modo que sea considerado válido tanto por Arduino IDE como por g ++.
El archivo MAKE oficial (?) Disponible aquí explica qué hacer si se utiliza el archivo MAKE en lugar del IDE:
# The Arduino environment does preliminary processing on a sketch before
# compiling it. If you're using this makefile instead, you'll need to do
# a few things differently:
#
# - Give your program's file a .cpp extension (e.g. foo.cpp).
#
# - Put this line at top of your code: #include <WProgram.h>
#
# - Write prototypes for all your functions (or define them before you
# call them). A prototype declares the types of parameters a
# function will take and what type of value it will return. This
# means that you can have a call to a function before the definition
# of the function. A function prototype looks like the first line of
# the function, with a semi-colon at the end. For example:
# int digitalRead(int pin);
... pero esto no explica cómo usar tanto el IDE como un archivo MAKE.
Actualización 2
Recientemente encontré PlatformIO que no responde a esta pregunta directamente, pero automatiza gran parte del proceso (genera archivos Scons para usted) y hasta ahora prefiero el flujo de trabajo sobre el IDE Arduino y el enfoque fuente + archivo MAKE. Buen apoyo de los autores también.