Boost logo

Boost :

Subject: Re: [boost] [1.48.0] Beta 1 release candidates available
From: Lars Viklund (zao_at_[hidden])
Date: 2011-10-26 13:57:37


On Wed, Oct 26, 2011 at 07:26:27PM +0200, Olaf van der Spek wrote:
> In another project:
> 1>c:\program files (x86)\microsoft visual studio
> 10.0\vc\include\iterator(530): error C3859: virtual memory range for
> PCH exceeded; please recompile with a command line option of '-Zm110'
> or greater
> 1>c:\program files (x86)\microsoft visual studio
> 10.0\vc\include\iterator(530): fatal error C1076: compiler limit :
> internal heap limit reached; use /Zm to specify a higher limit
> 1>

Is this from building Boost itself? If so, which library?

If it's in your code that uses Boost, it's perfectly natural. When you
build precompiled header files, there's a nice solid chunk of memory
allocated for the compiler to stow away intermediary state in, which it
then serializes to the PCH file, for loading into future compiler
processes that use the precompiled header to bootstrap themselves.

The problem is that this memory needs to be allocated up-front. All this
message means is exactly what it says - the default amount is not
sufficient and you need to change it in the build settings for the
source file that builds your PCH, adding /Zm123 to the advanced compiler
settings field there, or globally for your project.

The reason you get this now and not before is because you've not used
enough Boost libraries, and that the ones you do use have had their
compile-time memory usage increased somewhat.

-- 
Lars Viklund | zao_at_[hidden]

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk