I would like to use Intel C++ in Linux operating system. I would like to know what is the best enviroment I should use to be as much productive as possible. Should I use Eclipse? Vi and make my our Makefile or perhaps use CMake.
Is there someone with experience using Intel C++ compiler in Linux.. what should I know ?
I use it on Linux and am quite happy with it. I think the choice of IDE or command line environment is a personal preference, sometimes also dictated by the GUI toolkit for which you are developing (if any). My personal preferences:
make -j 4 ... (for multi-core compilation)
nedit is my editor of choice: zero learning curve, fast, light, smoothly handles big files and tons of windows, syntax highlighting.
My complaints over icc:
-Wall is too wordy an only partially useful. Gcc, in my opinion has maintained a better ballance of nitpicking vs. flooding with useless cast warnings and unused function parameters. For example, gcc will warn you about unused variables, while icc will not.
Compiler is quite sensitive and requires some babysitting. You shouldn't skip reading the release notes once you install a new version. Over many years of using gcc, it was mostly smooth sailing. But on Intel C++, important changes in the meaning of standard compiler options are quite normal. I was able to use unmodified makefiles on gcc for many years, while on icc you can expect to frequently change them, in order to get what you want.
And the main plus sides:
smaller code (with appropriate compile options)
wider array of multi-core optimization options
It is my impression that Intel C++ caters the niche of performance oriented programmers who (like to) know their tools. It is a plus if you belong to this group, or minus if you don't.
I am an old hat programmer using Visual Studio and have a recent teeth cutting experience porting code to Linux. The first IDE I used on Linux (Ubuntu 9.4 x64) was Anjuta. Main reason being I couldn't get Eclipse to install on my system. Anjuta is not too bad. When I upgraded Ubuntu to 10.4, I retried installing Eclipse and this timethe installworked (the Ubuntu upgrade also fixed a few other problems I had relating to video and mouse).
The Eclipse IDE is better than Anjuta (IMHO) but it is somewhat lacking (or should I say different) from the Visual Studio experience. Visual Studio has the concept of Solutions which are collections of projects. Eclipse has workspaces with projects beneath the root workspace folder. In the VS solution, the projects and components of the project (files) can be anywhere on the system. On Linux the IDEproceedure seems to require a ridgid tree structure. You can circumvent this by using hand writtenmake files, but the IDE created make files tend to require this structure.
You may want to look at options (plug-ins) for the source code editing. The standard editor in the IDE does not have split windows or side-by-side or over/under as VS does. One of the plug-ins may permit this but I haven't looked around for one to use.
The default compiler in Eclipse CDT will be g++ but you can easily change that to use Intel C++
I've been a Unix/Linux programmer for 20-odd years, but I have always hated having to work with Linux as a desktop environment. I recently lost some of that loathing when I discovered Ubuntu 9.0. For the first time ever I started finding myself actively working under Linux rather than just using putty to log into it.
Then along came Ubuntu 10.04, and I now spend more time working within Linux rather than remoteing into it from my Windows machine.
Eclipse... Well, you're talking about an IDE developed for Java which has "C++ Support".
KDevelop... In typical KDE style, it's crammed full of diverse features and capabilities with an emphasis on integrating them together, although this glueing often renders features into different functionality than they were supposed to have. And there are bizzare things that KDevelop4 just doesn't do. And, in typical KDE style, it'll make you wonder how anyone can accuse Microsoft of bloat...
You might want to look at CodeBlocks. It goes through spurts of development that bring it leaps and bounds forward, and then it flatlines for a while and stagnates a bit. But it tends to be fast, it's designed for C/C++, and it has many of the more important visual studio features.
Another option is MonoDevelop. Very heavily based on Visual Studio, written in .NET, it supports C/C++ as well as supporting Mono/.NET development. It's the closest to a Visual Studio experience on Linux so far, and it's pretty practical.
Personally... I find that for lean & mean it's hard to beat using CMake to manage your project files in a portable way and then just using Vim or GVim.