Sign in to follow this  
MrJoshL

Should I Use MSVC For My Release Build?

Recommended Posts

I'm in the process of writing a game in C, and I am wondering what compiler I am going to use a little ways in the future when I am building a release build for sale. My Linux version is compiled with GCC, but I have a choice to make with Windows. My current test-bed compiler is MinGW. I do not use Visual Studio, and my game does not leverage Direct3D at all. It uses OpenGL and OpenAL and DirectInput (DirectInput only on the Windows version, obviously). Here are my questions:

 

Almost all of my programming has been on Linux and BSD, so I'm new to the Windows crowd.

1.) Is it better performance-wise to use MSVC on Windows as opposed to MinGW?
 
2.) Is MSVC managed or native?
 
3.) I know that in C# you have that fancy build menu where you can add some properties (author, date, title, icon) etc. to your program. Does MSVC have that in a nice fancy build menu?
 
4.) Is the Express Edition compiler a step down from the others?
 
5.) As an IDE, not a compiler, do you recommend (for Windows) Visual Studio or Code::Blocks? I currently use Code::Blocks for both Windows and Linux development, as the project files can be used on Linux.
Edited by MrJoshL

Share this post


Link to post
Share on other sites
1) It varies, in general MinGW tends to be quite a few versions behind the linux version of gcc and the express edition of MSVC doesn't give you all the advanced optimization options, the exact performance you get depend heavily on your own code and the target architecture so just try both compilers to see which one works best.
The pro versions of MSVC usually outperform MinGW though.

2) Microsofts compiler produces native code for C and C++. (Allthough it can do managed code for C++/CLI atleast aswell)

3) Dunno.

4) Yes, some advanced optimization features (Profile guided optimization for example are not available in the express edition (or atleast weren't in the older versions, Havn't done much Windows Development in the past few years so this may have changed)

5) I'd recommend QTCreator, but Visual Studio is a solid option as well if you develop on Windows (The inability of the express edition to use plugins can be a bit of a pain)
I've never been a huge fan of Code::Blocks but i'm sure it works.

At the end of the day the choice of IDE is all about personal preferences, download a few and try them out to see which ones you like best. Edited by SimonForsman

Share this post


Link to post
Share on other sites

5) I'd recommend QTCreator, but Visual Studio is a solid option as well if you develop on Windows (The inability of the express edition to use plugins can be a bit of a pain)
I've never been a huge fan of Code::Blocks but i'm sure it works.

You'd prefer QTCreator to VS/Code::Blocks, even though he doesn't use any of that QT stuff? I always thought the IDE was designed to work well with design-your-own-gui-in-the-other-tab and would be useless if you want to write something else.

Edited by BloodyEpi

Share this post


Link to post
Share on other sites


5) I'd recommend QTCreator, but Visual Studio is a solid option as well if you develop on Windows (The inability of the express edition to use plugins can be a bit of a pain)
I've never been a huge fan of Code::Blocks but i'm sure it works.

You'd prefer QTCreator to VS/Code::Blocks, even though he doesn't use any of that QT stuff? I always thought the IDE was designed to work well with design-your-own-gui-in-the-other-tab and would be useless if you want to write something else.


it works just fine even without QT, and the Vim mode puts it roughly 50 miles above anything else(including VS) imo.

Share this post


Link to post
Share on other sites

You'd prefer QTCreator to VS/Code::Blocks, even though he doesn't use any of that QT stuff? I always thought the IDE was designed to work well with design-your-own-gui-in-the-other-tab and would be useless if you want to write something else.

 

I prefer QtCreator over Code::Blocks, even when not using the Qt API. (I haven't tried Visual Studio)
Yes, it has built-in support for Qt and has a drag-and-drop GUI wizard, but it's perfectly usable without Qt, and is an excellent C++ IDE (and is cross-platform).

It has built-in support for Mercurial, SVN, Git, Bazaar, CVS, and other source control systems, if you want it, and support for CMake (though it uses its own QMake system by default, which I found easy to learn and sufficient for my needs), its intellisense is excellent too. It is very stable and rarely crashes (which are usually because MinGW crashes). Its syntax highlighting support for C++11 is mostly good, and improving, but it has a few problems with pre-compiled headers and debugging (which are both really MinGW/GCC's fault).

Edited by Servant of the Lord

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this