Search code examples
carduino

Can the Arduino IDE be used to develop plain old C programs?


I have a simple Arduino sketch that spans several files. There is a function signature in an h file, and the definition in the C file.

If I attempt to compile ("Verify") the sketch, I get "undefined reference" errors to the function defined in a C file. Changing the file name from *.c to *.cpp resolves the issue, but I don't want to define the file as a C++ file. Is it possible to compile plain old C files in Arduino?


Solution

  • The Arduino IDE is very limited, my advice: avoid it. You have some alternatives you can find here: http://arduino.cc/playground/Main/DevelopmentTools


    • Develop for Arduino using Minibloq graphical programming environment.
    • Arduino CMake build system
    • Ino command line toolkit for Arduino
    • Develop for Arduino using AVR-Ada
    • Develop for Arduino using Eclipse
    • Develop for Arduino using Bitlash
    • Run Arduino from the command line
    • Build using Cmake
    • Build using Scons
    • Build using build_arduino.py
    • Getting a Chumby talking to Arduino
    • Running Arduino on the XO laptop (AKA the $100 laptop)
    • Arduino in Sharp Netwalker
    • Arduino on OpenSolaris
    • Using Arduino Libraries in CodeBlocks
    • Develop for Arduino using Kdevelop
    • Using assembly language source files in the Arduino IDE: Assembly in Arduino