Cross Platform C++ compiling options for CURL Library

Hi NoblePepper,
I know you are very good at this !

As advised by you in previously, I have successfully built all the toolchain from ground zero and compiled simple C++ Program. (so far good, running flawlessly in Arduino)
Now in another C++ program I am using CURL library and including <curl/curl.h> and linking with -l curl library.

g++ compiler on ubuntu machine compiles this code and runs without any issues.

When I am cross compiling the code for Arduino Linino using mips-openwrt-linux-g++ it says cannot find <curl/curl.h>

I have added the file path to $PATH and also includes -B "/home/ubuntu/linino/trunk/staging_dir/target-mips_r2_uClibc-0.9.33.2/usr/include" command line option. Still this compiler is complaining cannot find curl/curl.h file Not sure what is going on here
Looks like I need to set the PATH somewhere else which I am not sure.

Any help from you is highly appreciated.

Also: I believe you are using Eclipse for the Cross compilation right. Can you point me to documentation on this as well? I might as well start using Eclipse.

Thank you in advance and appreciate any input on this. I am stuck here.

Sincere Regards,
BRE

Looks like I need to set the PATH somewhere else which I am not sure.

PATH is where Linux looks for programs, nothing to do with where the compiler looks for things.

You need to tell the compiler where your includes are with the -I option.

-I"/home/somebody/whereIputincludes"

Can you point me to documentation on this as well? I might as well start using Eclipse.

http://forum.arduino.cc/index.php?topic=205091.msg1510428#msg1510428

As Always,

Super Super Super

Thanks NobelPepper

This worked and I also linked library with -L option.

Unfortunately these options are not there mips-openwrt-linux-g++ --help

Once Again, I knew you can help me with this

Great

High Regards

BRE

gcc has far too many options for anything like --help to list them.

Here is a good place to start Top (Using the GNU Compiler Collection (GCC)) which would lead you to Directory Options (Using the GNU Compiler Collection (GCC))

I have learned most of the options I know by watching what Eclipse does, it makes it a lot easier to find what is needed but it is a system to learn all on it's own.

Thank you very much NoblePepper,

This is very very useful,

I got everything up and running on the Arduino now. As advised, I will start using Eclipse.

Currently, I am using UBUNTU LINUX . Latest version. I can install Eclipse on that and cross compile all the C/C++ programs right ?

One more thing I need to ask is : Is it possible to upload a small c program on the Arduino ATMega32U4 Processor running parallel with Sketch. or It runs only one Sketch. any thoughts on that.

Thank you very much.

Sincerely appreciated,

Regards

BRE

I am running Eclipse Juno on Ubuntu 13.04, the newer versions of Ubuntu should be fine. It looks like the 12.xx versions of Ubuntu are fine too.

The howto I pointed you toward is written for Eclipse Indigo so it will match that exactly, and would be easiest to use with it.

I think some things were in different places in Juno. I tried Kepler but ran into some issues with compiling for Arduinos on it and went back to Juno but I never tried the OpenWrt setup on Kepler so I don't know if it will work with OpenWrt or not.

A sketch is a C++ program, the IDE hides it from the user but all of the sketch code is C++ and linked to Arduino libraries. There are some options to "multitask" on the AVR but I don't see the point myself.