Jump to content

  • Log In with Google      Sign In   
  • Create Account

Should I Use MSVC For My Release Build?


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
7 replies to this topic

#1 Toothpix   Crossbones+   -  Reputation: 810

Like
0Likes
Like

Posted 30 March 2013 - 12:46 PM

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, 30 March 2013 - 12:46 PM.

C dominates the world of linear procedural computing, which won't advance. The future lies in MASSIVE parallelism.


Sponsor:

#2 Promit   Moderators   -  Reputation: 7608

Like
5Likes
Like

Posted 30 March 2013 - 12:57 PM

1) In my experience, MSVC produces better code than MinGW/GCC. The difference is not large.

2) Either-or. Don't have to use any managed stuff.

3) Not really.

4) Same compiler.

5) VC is the standard. Code::Blocks is useful if you need a different compiler chain than MS.



#3 Endurion   Crossbones+   -  Reputation: 3684

Like
4Likes
Like

Posted 30 March 2013 - 01:12 PM

3) Add a version resource to your project. There you can set the wanted fields quite easily.


Fruny: Ftagn! Ia! Ia! std::time_put_byname! Mglui naflftagn std::codecvt eY'ha-nthlei!,char,mbstate_t>

#4 SimonForsman   Crossbones+   -  Reputation: 6305

Like
2Likes
Like

Posted 30 March 2013 - 01:13 PM

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, 30 March 2013 - 01:17 PM.

I don't suffer from insanity, I'm enjoying every minute of it.
The voices in my head may not be real, but they have some good ideas!

#5 BloodyEpi   Members   -  Reputation: 686

Like
1Likes
Like

Posted 30 March 2013 - 02:41 PM

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, 30 March 2013 - 02:42 PM.


#6 SimonForsman   Crossbones+   -  Reputation: 6305

Like
1Likes
Like

Posted 30 March 2013 - 03:07 PM


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.
I don't suffer from insanity, I'm enjoying every minute of it.
The voices in my head may not be real, but they have some good ideas!

#7 Hodgman   Moderators   -  Reputation: 31822

Like
1Likes
Like

Posted 30 March 2013 - 08:05 PM

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


You can use Vim in (the non express versions of) visual studio, if you're into that kind of thing ;-)

#8 Servant of the Lord   Crossbones+   -  Reputation: 21008

Like
1Likes
Like

Posted 30 March 2013 - 09:48 PM

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, 30 March 2013 - 09:49 PM.

It's perfectly fine to abbreviate my username to 'Servant' rather than copy+pasting it all the time.
All glory be to the Man at the right hand... On David's throne the King will reign, and the Government will rest upon His shoulders. All the earth will see the salvation of God.
Of Stranger Flames - [indie turn-based rpg set in a para-historical French colony] | Indie RPG development journal

[Fly with me on Twitter] [Google+] [My broken website]

[Need web hosting? I personally like A Small Orange]





Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS