Game Development Community

Trouble Compiling TGEA 1.8.1 in VC++ Express 2008

by Robert Rice · in Torque Game Engine Advanced · 05/25/2009 (2:19 pm) · 4 replies

I've installed the March 2009 version of the DirectX SDK and the Microsoft Platform SDK for Windows Server 2003 SP1. I added the paths for both the include and library folders for both of these. I also made the change as indicated to the Additional Include libraries as indicated in this thread...

http://www.garagegames.com/community/forums/viewthread/85163

However, I am still getting "2>c:\program files\microsoft platform sdk\include\rpcndr.h(33) : fatal error C1189: #error : incorrect <rpcndr.h> version. Use the header that matches with the MIDL compiler."

This is the block of code (in rpcndr.h) that is causing the compile to fail...

#ifdef __REQUIRED_RPCNDR_H_VERSION__
#if ( __RPCNDR_H_VERSION__ < __REQUIRED_RPCNDR_H_VERSION__ )
#error incorrect <rpcndr.h> version. Use the header that matches with the MIDL compiler.
#endif
#endif

More frustrating still, __RPCNDR_H_VERSION__ and __REQUIRED_RPCNDR_H_VERSION__ are both defined as 475, so this really should not be happening.

Has anyone else encountered this and found a solution?

#1
05/25/2009 (4:21 pm)
Make sure the SDK include and lib paths are before those of VS.

Oh, it also looks you're using an old version of the SDK. I'm not sure if that is a problem.
#2
05/25/2009 (5:08 pm)

Also, as you've installed a proper platform SDK, kick the include path for the MSPlatformSDK headers that ship with Torque.
#3
05/25/2009 (7:44 pm)
@Robert, VC2008 Express includes its own version of the Microsoft Platform SDK, so you dont need nor install, nor add any paths to the default configuration, other than the DirectX ones. That may be the problem also.
#4
05/25/2009 (8:17 pm)
Thanks everyone for the help. I ended up downloading the most recent version of the Platform SDK. I then had one other problem where I had to redefine. #define _WIN32_WINNT 0x0400 as #define _WIN32_WINNT 0x0500. I just compiled and ran so all is well. Again, thanks!