Windows/Linux/Mac Eclipse plugin to compile and upload arduino sketches

First of all: a BIG "thank you" Jantje ! This plug-in is exatly what has been missing. After being accustomed to Eclipse-Style programming (mainly in Java), it was hard for me to type all the code and have no auto-completion, no F3 key, etc. Also compiling in the Arduino IDE takes much too long. I'm very happy you were able to implement the incremental builds. This saves so much time and it (almost) works like a charm! I installed a new Eclipse C++ (Juno) edition, installed V2beta of your plug-in and it worked fine.

There are two things I'm fighting with:

  1. Using the procedure described in http://eclipse.baeyens.it/IDECompatibility.html does not work - no .o file is generated for the .ino file. This is what happens:
"Z:/development/arduino/arduino-1.5.2/hardware/tools/g++_arm_none_eabi/bin/arm-none-eabi-gcc" -c -g -Os -w -ffunction-sections -fdata-sections -nostdlib --param max-inline-insns-single=500 -Dprintf=iprintf -mcpu=cortex-m3 -DF_CPU=84000000L -DARDUINO=152 -D__SAM3X8E__ -mthumb -DUSB_PID=0x003e -DUSB_VID=0x2341 -DUSBCON "-IZ:/development/arduino/arduino-1.5.2/hardware/arduino/sam/system/libsam" "-IZ:/development/arduino/arduino-1.5.2/hardware/arduino/sam/system/CMSIS/CMSIS/Include/" "-IZ:/development/arduino/arduino-1.5.2/hardware/arduino/sam/system/CMSIS/Device/ATMEL/"   -I"Z:\development\arduino\arduino-1.5.2\hardware\arduino\sam\cores\arduino" -I"Z:\development\arduino\arduino-1.5.2\hardware\arduino\sam\variants\arduino_due_x" -MMD -MP -MF"SensorOnLCD.ino.d" -MT"SensorOnLCD.ino.d" "../SensorOnLCD.ino"  -o  "SensorOnLCD.ino.o"
arm-none-eabi-gcc.exe: ../SensorOnLCD.ino: linker input file unused because linking not done
Finished building: ../SensorOnLCD.ino

Changing the file back to .cpp, calls the compiler like this (note: the g++ compiler is called instead of c++ and some parameters are different):

"Z:/development/arduino/arduino-1.5.2/hardware/tools/g++_arm_none_eabi/bin/arm-none-eabi-g++" -c -g -Os -w -ffunction-sections -fdata-sections -nostdlib --param max-inline-insns-single=500 -fno-rtti -fno-exceptions -Dprintf=iprintf -mcpu=cortex-m3 -DF_CPU=84000000L -DARDUINO=152 -D__SAM3X8E__ -mthumb -DUSB_PID=0x003e -DUSB_VID=0x2341 -DUSBCON "-IZ:/development/arduino/arduino-1.5.2/hardware/arduino/sam/system/libsam" "-IZ:/development/arduino/arduino-1.5.2/hardware/arduino/sam/system/CMSIS/CMSIS/Include/" "-IZ:/development/arduino/arduino-1.5.2/hardware/arduino/sam/system/CMSIS/Device/ATMEL/"   -I"Z:\development\arduino\arduino-1.5.2\hardware\arduino\sam\cores\arduino" -I"Z:\development\arduino\arduino-1.5.2\hardware\arduino\sam\variants\arduino_due_x" -MMD -MP -MF"SensorOnLCD.cpp.d" -MT"SensorOnLCD.cpp.d" -x c++ "../SensorOnLCD.cpp"  -o  "SensorOnLCD.cpp.o"
Finished building: ../SensorOnLCD.cpp
  1. I wanted to access a LCD shield. I added the path to the library as described earlier for GNU C and GNU C++ under the tab "project properties -> C/C++ General -> Paths and Symbols -> Includes". This allowed me to work with the include files. But the LiquidCrystal.cpp did not get compiled. So I added the same path again under "C/C++ General -> Paths and Symbols -> Source Location" and added an exclusion filter for "examples" for this entry. This worked. Everything got compiled and the excutable works fine. But I'm not sure if this is the correct approach. Would it be possible for you to add a way to add such libraries under "project properties -> Arduino" (or elsewhere where it makes sense) ?

Regards,
Michael