Hi J-S,

I'm running VS8/2005 on XP. The warning shows the conflict with the VS8 sdk 
file:
   microsoft visual studio 8\vc\platformsdk\include\basetsd.h

I'm guessing the problem might only show up in certain situations. It is 
possible that the jmorecfg.h and the basetsd.h file are only included together 
in certain development situations (and perhaps not, for example, when compiling 
OSG itself)

you can see more reports of same/similar issue here:
   http://www.cygwin.com/ml/cygwin/2004-07/msg01051.html

Also it seems that GNUWIN32 distributes Win32 specific versions of many GNU 
related libs. In GNUWIN32's version of jmorecfg.h the ifdef protection is there:
   http://gnuwin32.sourceforge.net/packages/jpeg.htm

That being said, instead of patching the jmorecfg.h we could use the one 
included in the GNUWIN32 package instead.


      Andy



-----Original Message-----
From: [EMAIL PROTECTED] on behalf of Jean-Sébastien Guay
Sent: Wed 1/9/2008 7:19 PM
To: [email protected]
Subject: Re: [osg-users] INT32 redeifinition with Win32 and VS8binary   package
 
Hello Andrew,

> It appears that the VS8 binary package for osg2.2.0 has a problem in
> one of the 3rd party header files included. (jmorecfg.h)
> Compiling against it causes an error regarding redefinition of INT32.

[...]

> in jmorecfg.h:
>
> #ifndef XMD_H
> typedef long INT32;
> #endif
>
> is changed to:
>
> #if !defined( XMD_H ) && !defined( WIN32 )
> typedef long INT32;
> #endif

I just checked, and on my systems, the first block of code is in  
jmorecfg.h (*no* include guard for WIN32), yet I never got the  
redefinition warning. I'm using both Windows XP and Vista, with both  
VC++ 2005 and 2008. Are you sure this isn't caused by some other  
headers you're including in your app? That is to say, one definition  
is in jmorecfg.h, where is the other one?

If you can post the entire warning (with file names and line numbers)  
it would be easier to see what's going on. Just to check that this  
isn't a red herring.


To reply to Philip Taylor about the 64-bit issues, this is a 3rd party  
header, so OSG has little control over it. On the other hand, it comes  
from libjpeg, which is very popular and is used on almost all linux  
distros (most of which are  built both 32 and 64 bit these days), so I  
imagine if there were any 64-bit-cleanliness issues, they would have  
heard about them by now. That is not to discount your point, which  
could very well be correct, but it's "out of OSG's hands" anyways.


J-S
-- 
______________________________________________________
Jean-Sebastien Guay     [EMAIL PROTECTED]
                         http://whitestar02.webhop.org/

----------------------------------------------------------------
This message was sent using IMP, the Internet Messaging Program.


_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

<<winmail.dat>>

_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to