README.MSVC6 - SimGear/source - 7 February, 2005 For some specific 'kluges' for MSVC6 and MSVC7 follows ... If using MSVC6, you may need to add the following 'defines' - .../math/fastmath.cxx #ifndef M_LN2 #define M_LN2 0.69314718055994530942 #endif // #ifndef M_LN2 .../nasal/mathlib.c #ifndef M_PI #define M_PI 3.14159265358979323846 /* pi */ #endif /* M_PI */ #ifndef M_E #define M_E 2.7182818284590452354 #endif /* M_E */ ... ... and needed folowing 'kluges' ... .../model/modellib.cxx, personality.cxx, .../scene/tgdb/obj.cxx, and .../subsystem_mgr.cxx had to add the line - using namespace std; and .../scene/material/mat.cxx Fixed C2374: 'i' : redefinition; multiple initialization, by making it 'ii' ... and in ...\scene\tgdb\vasi.hxx used 'i2' ... .../screen/texture.hxx - had to move the 'protected:' label to below the structure, and insert 'public:' in front of it ... With persistance, you too can get to this point - SimGear.lib - 0 error(s), 88 warning(s) ;=)) In MSVC7 - after convert, zlib.dsp failed to load. I had to delete it, and then 'Add Existing Project ...' to SimGear Soluton, navigate to and select src-libs\zlib.dsp, and it loaded fine ... Of course I had to remove the path to metakit, correct the path to zlib ... I think I 'unpack' it 'differently', and ADD paths to PLIB and OpenAL ... I certainly LIKE the change to using ';' to separate paths, although it seems the MSVC6 ',' still works ... but none of the above defines, 'kluges' are required. I and am rewarded with - SimGear - 0 error(s), 25 warning(s) ---------------------- Done ---------------------- Build: 2 succeeded, 0 failed, 0 skipped It seems that the SDK headers, included by MSVC7 already define M_LN2, M_PI, M_E ... where? ... looking at the MASSIVE 'INCLUDE' environment variable, now clearly shown in BuildLog.htm generated - C:\Program Files\Microsoft Visual Studio .NET 2003\SDK\v1.1\include; C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\include; C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\atlmfc\include; C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\PlatformSDK\include\prerelease; C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\PlatformSDK\include And there it is, they are, all of em! - C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\include\math.h #define M_LN2 0.693147180559945309417 #define M_E 2.71828182845904523536 #define M_PI 3.14159265358979323846 #define M_PI_2 1.57079632679489661923 #define M_PI_4 0.785398163397448309616 each, with one more decimal point ... to perhaps appease us for leaving them out for such a long time ... ;=)) EOF