How does the Arduino IDE/build system work?
I noticed that they use the avr-gcc in the background, but what do they do on top?
They seem to have their own "kind of C" language that transforms into something that then compiles by avr-gcc.
Would someone like to spread some light on how it really works?
- What language are they using?
- Are they using something like Make in the background?
- What intermediate files do they create? Can you listcompile a arduino file, or have a look at the generated AVR assambler?
The setup() and loop() functions are just wrappers for other standard functions, ie loop is actually main()
– dext0rb Apr 24 '12 at 19:03"First, the Arduino environment performs some small transformations to make sure that the code is correct C or C++ (two common programming languages)."
From the BuildProcess link below
– dext0rb Apr 24 '12 at 21:03