6

I use Qt for C++ development, and today I produced a .vcproj file from a .pro file.

I noticed under the vcproj project properties, Qt added this flag into the C/C++ -> Command Line -> Additional Options

-Zm200 

What is -Zm200?

sivabudh
  • 31,807
  • 63
  • 162
  • 228

2 Answers2

14

-Zm is Specify Precompiled Header Memory Limit (more info here). It limits the amount of memory the compiler can allocate for processing precompiled headers. For Visual C++ 2008, -Zm200 means limit to 150 MB.

Michael
  • 54,279
  • 5
  • 125
  • 144
  • this is quite strange. if you look at the article pointed out by Eric, that article says 210MB! – sivabudh Feb 12 '10 at 00:38
  • 1
    Eric's article refers to VC++ 6.0. My link points to VC++ 2008. 2005 has a different number, 2010 will probably be different still. – Michael Feb 12 '10 at 00:39
  • 5
    Hey its msdn no one expect them to be either accurate or useful ^^ – Eric Feb 12 '10 at 00:39
  • According to the documentation for VC6 (http://msdn.microsoft.com/en-us/library/aa278580%28VS.60%29.aspx) the number is a scaling factor. It also mentions that the default limit is about 105MB. So 200 means 200% (hence 2x105 = 210). The default in VS2008 must be 75 MB if Michael is correct above. – Will Bickford Nov 18 '11 at 17:01
3

This limits the maximum heap size for the compiler according to this article. So this doesn't affect your program at all

Eric
  • 19,525
  • 19
  • 84
  • 147