Setting up for coding Arduino on Eclipse

I would like to use a more powerful IDE for my Arduino projects, and also for just learning C/C++ in general. I installed latest version of Eclipse (Luna), and Java (all 64 bit). I have found several sets of instructions for how to set up for coding/compiling/uploading for Arduino (Uno R3 in my case). i am not a coder, though I have mucked around in Visual Studio a bit so know a teensie bit about sw dev. I installed the Eclipse AVR plugin. My basic approach was to use the exisitng ArduinoCore.a library from the the Arduino install directory, rather than compiling myself. I put it in a folder, and pointed Eclipse to it in the compiler and linker setups. I almost got it working but am getting a "cannot find -lcore" from the linker. not sure why?

make all
Building target: test3.elf
Invoking: AVR C++ Linker
avr-gcc -Wl,-Map,test3.map,--cref -mrelax -Wl,--gc-sections -L"C:\Users\twelti\workspace\ArduinoCoreLibrary" -mmcu=atmega328p -o "test3.elf" ./src/test3.o -lArduinoCore -lm -lc -lprintf_flt -lcore
c:/winavr-20100110/bin/../lib/gcc/avr/4.3.3/../../../../avr/bin/ld.exe: cannot find -lcore
make: *** [test3.elf] Error 1
18:09:43 Build Finished (took 288ms)

I have read somewhere that I would need a "debug" version of the core library if I want to debug in Eclipse. If so, I guess I will need to bite the bullet and compile ArduinoCore (using both build and debug configurations). I guess I'm just wanting to know which is the best reference (i.e. most current and correct and complete) for doing all this.

Another question is, should I use the Arduino Eclipse IDE named Sloeber - Welcome! plugin? As I understand, it makes the Eclipse IDE look more like Arduino IDE, and does some (all?) of the code mangling that Arduino IDE does. i also found instructions (like at the bottom of: Arduino Playground - Eclipse ), for how to just put in the proper code to do that. Is there any other advantage of using the baeyens plugin?

Also, and current suggestions on a serial monitor? can I just use the one in Arduino IDE? I'm getting a headache...

i am not a coder

But you need a "more powerful" IDE. Why?

two reasons:

  1. to debug code for Arduino
  2. to develop my C/C++ coding skills in general.

I just discovered Atmel Studio and Visualmicro. Installed in 10 minutes and able to import a sketch and upload in a few more minutes with minimual tweaking. Perfect for a Noob like me!

twelti wrote:

Another question is, should I use the Arduino Eclipse IDE named Sloeber - Welcome! plugin? As I understand, it makes the Eclipse IDE look more like Arduino IDE, and does some (all?) of the code mangling that Arduino IDE does. i also found instructions (like at the bottom of: Arduino Playground - HomePage ), for how to just put in the proper code to do that. Is there any other advantage of using the baeyens plugin?

No, it does not make the Eclipse IDE look like the Arduino IDE, if it did, there would be no advantage, right? I would have moved to something else then long ago.

Using the Eclipse IDE is very good, I use it on both Mac OSX as well as GNU/Linux systems, both are using Jantje's plugin, which simply uses the Arduino toolchain within the Eclipse environment.

Using Eclipse you will get so much more, than what you get with the IDE offered by Arduino folks.

Go to Jantje's site and you can download a ready made package for the system you use, which includes the Eclipse packages as well.

I also have standard Eclipse CDT, and use it for all my coding, whether that be C/C++ or javascript/HTML and so on.


Paul

I did look at it, but was a bit confused about the versions required. the website says: "The latest version for Arduino IDE 1.X is 1.2.5.5." what is that? it is somewhere between current default version 1.0.6 and the beta, at 1.5.8. And there was a lot of verbiage on the website about certain versions working or not working. It also says "The plugin now works with the 32 and 64 bit versions of Juno (V2) and indigo(V1)", says nothing about my current (Luna) version. A bit confusing for a Noob like me.