These should be defined in the osg/Config header, so if you app #includes it, you should get the right definitions (assuming you include the same header that OSG was built with).
Paul Martz Skew Matrix Software LLC http://www.skew-matrix.com +1 303 859 9466 -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Day, Michael (Mike) (CIV) Sent: Monday, May 04, 2009 3:17 PM To: OpenSceneGraph Users Subject: Re: [osg-users] Linker error with VirtualPlanetBuilder OK, Got it. In version 2.8.0, in the BoundingSphere header file there is this code at the bottom: #ifdef OSG_USE_FLOAT_BOUNDINGSPHERE typedef BoundingSpheref BoundingSphere; #else typedef BoundingSphered BoundingSphere; #endif OSG 2.8.0 ships built with float (rather than double) BoundingSpheres. A very similar problem exists for BoundingBoxes. Because of this, apps that build against it need to be careful -- either that or perform a custom build of OSG, which we don't want to require users of our PyOSG to do. Our "hack" was to set preprocessor definitions OSG_USE_FLOAT_BOUNDINGSHPERE and OSG_USE_FLOAT_BOUNDINGBOX in our bindings project. Cheers, Michael Day -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Robert Osfield Sent: Saturday, May 02, 2009 1:02 AM To: OpenSceneGraph Users Subject: Re: [osg-users] Linker error with VirtualPlanetBuilder Hi Michael, It does sound like there has been a mix up w.r.t which version of BoundingSphere has been built with the OSG i.e. BoundingSphere is typedef'd to BoundingSpheref and BoundingSphered, these are typesdefs against the templated BoundingSphereImp class. Or perhaps you wrappers are assuming one or other. Robert, On Fri, May 1, 2009 at 10:52 PM, Day, Michael (Mike) (CIV) <[email protected]> wrote: > Howdy, > > > > When building both VirtualPlanetBuilder and some custom PyOSG bindings > against OSG 2.8.0 I get the following linker error (among others): > > > > 1>TaskManager.obj : error LNK2001: unresolved external symbol "public: > virtual class osg::BoundingSphereImpl<class osg::Vec3d> __thiscall > osg::Group::computeBound(void)const " > (?computebo...@group@osg@@ube?av?$boundingspherei...@vvec3d@osg@@@2...@xz > ) > > > > The "Vec3d" portion of the error is, in fact, correct. There is no > such symbol in all of the OSG libs. There is, however, a > > > > osg@@ube?av?$boundingspherei...@vvec3f@osg@@@2...@xz > > > > (note that it's a Vec3f). > > > > Is this a difference between OSG 2.6.x and 2.8.0? Is there a solution? > We've been able to build our PyOSG bindings against OSG 2.6 > successfully without this issue in the past. > > > > Thanks, > > > > Michael Day > > > > > > _______________________________________________ > osg-users mailing list > [email protected] > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph. > org > > _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

