hedwards: My point there is that the IDE should know to actually include things that you tell it to include and the compiler itself should know where to find the libraries.
JMich: So if I try to compile with VS2010, the program compiles, if I try to compile with gcc, the compilation fails?
The IDE shouldn't do anything without being told to do it, even if that means a failed compile. I have seen programs whose code included 50 more } than {, yet still compiled succesfully. Should the IDE refuse to compile due to wrong number of brackets?
I don't mind the IDE having an option to report said errors and suggest fixes, but unless the file is linked properly, the IDE shouldn't use it.
What are you talking about?
If I include something in the source, then it should be included. Putting an include line in the source should result in the library being included. The IDE itself shouldn't be holding back headers unless those headers are obscure and installed in weird places.
Then again, this is Windows we're talking about, and things regularly get installed to stupid places with little or no predictability. But, common libraries like this, shouldn't require anything more than an include in the source in order to get them to be included.
When I'm working on a Linux or *BSD system I rarely, if ever, have this problem because the compiler actually includes the things that I want to include.