views:

628

answers:

11

Currently I`m using Visual Studio for writing code in C++. But it seems so weighty that I decided to switch for another one, preferably free, not so strict to system resources (I mean memory, of course) as VS to learn libraries, such as Boost and Qt. What compiler do you suggest?

+1  A: 

You will be hard-pressed to find an IDE as capable as MS VS. It is incredibly feature-rich.

However, if you just want command line compiling and linking it can do that too.

GCC is also an option.

Tim
and in Windows GCC is MinGW?
chester89
either minGW or cygwin, minGW if all you want is a compiler cygwin if you want other unix tools like perl varius editors such as vi and emacs, etc.
Jared
I think you are right, but there may be others? I am not sure - never used gcc on win32. Googole obviously for GCC and Win32 but also "cygwin"
Tim
Jared beat me to it...
Tim
Of course, emacs and many of the other good unix tools have been ported directly to windows, so you don't even need cygwin.
clay
+4  A: 

If you want to learn unix tools download and install cygwin It's a good set of tools but a full install takes up 5 or 6 gigs because so much is included.

Jared
+8  A: 

I'd suggest using Visual Studio's compiler from the command-line. You get the same high-quality compiler, without the resource-hogging IDE.

Although the IDE is pretty good too, and probably worth the resources it uses.

jalf
+1  A: 

Please note that you do not need another compiler or IDE to use boost libraries. I wouldn't replace Visual Studio with any other IDE/compiler, at least not on Windows. Installing Cygwin or SUA (better than Cygwin, closer to the Windows Kernel) will only be a pain just for what you are trying to reach.

Try to minimize the memory usage by disabling unnecessary things, keep the amount of open source files small, use an alternative to document explorer to find help (your browser on msdn will do). Besides that, I wouldn't call a few ten megabytes of memory a high usage. As long as it doesn't slow your system down there is not a real issue.

A better idea would be to upgrade your computer rather than to replace something powerful with something that you don't know.

TomWij
A: 

Seriously there is no real alternative to Ms's compiler on Windows. All the others are OK if you can't spring for Visual Studio or if you are just doing hobbyist work. Cygwin can be a pain to deal with.

If you don't want the IDE as someone else suggested just use the command-line compiler.

I've found VS to be quite good for doing Boost + Qt work. Especially if you have the Qt + VS integration tool. You get a GUI designer and respectable Qt project management tools.

+7  A: 

Code::blocks is exactly what you are after. You can can download it here: http://www.codeblocks.org/downloads/5

Choose the version with the mingw compiler bundled with it (Windows port of GCC). You can switch between that and the VC++ compiler as and when you like.

Code::Blocks has all the stuff you want, debugger integration, code completion, class browser, todo list etc. etc. It even import visual C++ projects.

Don't use Dev C++ which has already been recommended. It's very very old and outdated.

Kazade
+2  A: 

There is always Digital Mars. Also, you can freely download Microsoft WDK which comes with their C/C++ compiler and command-line build system.

Nemanja Trifunovic
A: 

If you are looking for a compiler that uses fewer system resources than the MS ones, you'll probably find that most modern compilers that are able to compile a good part of or almost everything in Boost will be quite heavy on system resources, both processor usage and memory consumption. To a certain extent that's just par for the course when it comes to C++.

That said, I do like to have a second compiler around if I'm writing portable code as it's a lot easier to iron out portability issues when you can ensure that the code compiles in different environments. If you want to do all that on Windows, may Cygwin is worth a look. However it does seem that the GCC you get with Cygwin is not exactly what you'd call up to date.

The aforementioned Digital Mars compilers are well worth a look, Walter Bright (the guy behind them) has been writing C++ compilers for a long time and they're pretty good. I have used them off and on since the early nineties and I've always been happy with them. Not to mention that they always seemed noticeably faster than the Microsoft offerings, but I haven't got any recent measurements to back that up.

At the end of the day, most third-party tool vendors on Windows tend to target the MS environment so if you're writing C++ code professionally and need/want tools like leak detectors, you pretty much need to be able to build with the MS compilers, even if they aren't your main development environment.

Timo Geusch
A: 

I sugget , Netbeans.org NetBeans IDE , download the Cygwin , follow one tutorial from http://www.netbeans.org for C++ confuguration at Netbeans IDE , just 2 steps.. and u are ok autocomplete (faster than VS')

classes and all... you want xD

A: 

It needs to mention about DevCpp. It is a simple UI wrap for gcc compiler (oh my, it is sounds like a tautology). It provides lightweight IDE but not so stable (so, its IntelliSense is somewhat buggy).

Eskat0n
A: 

If you use Qt why not use their IDE, QtCreator, there is compiler, debugger and GUI designer. All comes in one nice package and works on Windows, Mac and Linux.

In my opinion it's better than Code::Blocks (also based on MinGW/GCC).

Raf