Problems with PCH on Windows 2000 SP4

P

Paul

Dear world,

We are having issues with Windows 2000 SP4 and Pre-Compiled Header
(PCH) files that have been previously compiled on Windows XP using
..NET 2003. Recompiling the PCH files on Windows 2000 SP4 using /Yc
does work, but we really want to ship one PCH file to our customers
that will work on all versions of Windows.

Thanks very much

Paul.

PS The compiler output is below:


cl /c /G6 /O2 /W1 /Gd /vmg /MD /GX /EHs /DNO_STRICT /I"C:\Program
Files\Proph_72\data" /I"C:\Program Files\Microsoft Visual Studio .NET
2003\vc7\include" /I"C:\Program Files\Microsoft Visual Studio .NET
2003\vc7\PlatformSDK\include" /YuWatrunPreCompiled.h /Fp"C:\Program
Files\Proph_72\full_acc\PreComp\DotNETWatr_2003.PCH"

cl : Command line warning D4029 : optimization is not available in the
standard edition compiler

C0000000.cpp

C:\Prophet\Prophet 72\Proph VA Prod\N\C0000000.CPP(3) : warning C4653:
compiler option 'Optimizations (one or more of /Oawstgp[y]) or debug
checks (one or more of /GZ, /RTCcsu)' inconsistent with precompiled
header; current command-line option ignored

c1xx : fatal error C1001: INTERNAL COMPILER ERROR

(compiler file 'C:\Program
Files\Proph_72\full_acc\PreComp\DotNETWatr_2003.PCH', line 1)

Please choose the Technical Support command on the Visual C++

Help menu, or open the Technical Support help file for more
information

cpg00000.cpp

c1xx : fatal error C1060: compiler is out of heap space

c1xx : fatal error C1063: INTERNAL COMPILER ERROR


Please choose the Technical Support command on the Visual C++


Help menu, or open the Technical Support help file for more
information
 
C

Carl Daniel [VC++ MVP]

Paul said:
Dear world,

We are having issues with Windows 2000 SP4 and Pre-Compiled Header
(PCH) files that have been previously compiled on Windows XP using
.NET 2003. Recompiling the PCH files on Windows 2000 SP4 using /Yc
does work, but we really want to ship one PCH file to our customers
that will work on all versions of Windows.

AFIAK, there's no guarantee that PCH files are portable off the machine
where they were created, regardless of OS vrersion. That you've been able
to do it at all is just luck. I'd like to be proven wrong about this - but
that's my understanding.

-cd
 
R

Ronald Laeremans [MSFT]

DO NOT SHIP PCH FILES!!

They are guaranteed to work only a single machine that has nothing change in
the interim (hotfix, SP, whatever to the OS, the compiler, the CLR or
anything else basically). They are simply a dump of memory at the time we
have generated the info. Anything that changes that memory layout will make
them incompatible.

Ronald Laeremans
Visual C++ team
 
P

Paul

Hi Ronald + Carl,

We have been shipping PCH files for some time now, but I think you are
right that we have been very lucky that most of our clients haven't
hit compile problems until now. We will be making changes to our
product to regenerate PCH files on the target platform.

Thanks very much for the quick response guys and it's also pleasing to
see to see somebody from Microsoft replying!

Best regards,

Paul :)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top