Hi Christophe, VPB build system should be able to detect the build type of the OSG automatically. Which version of OSG and VPB are you using?
Robert. On Tue, Jul 8, 2008 at 7:47 AM, christophe loustaunau <[EMAIL PROTECTED]> wrote: > Hi, > > I have compile OSG with OSG_USE_FLOAT_BOUNDINGBOX and > OSG_USE_FLOAT_BOUNDINGSPHERE to OFF. Then, when I try to > compile VPB, it hangs on : > > 3>DataSet.obj : error LNK2019: unresolved external symbol > "__declspec(dllimport) public: float & __thiscall > osg::BoundingBox::yMax(void)" ([EMAIL PROTECTED]@osg@@QAEAAMXZ) > referenced in function "public: bool __thiscall vpb::DataSet::addModel(enum > vpb::Source::Type,class osg::Node *)" > ([EMAIL PROTECTED]@vpb@@[EMAIL PROTECTED]@[EMAIL PROTECTED]@osg@@@Z) > 3>DataSet.obj : error LNK2019: unresolved external symbol > "__declspec(dllimport) public: float & __thiscall > osg::BoundingBox::yMin(void)" ([EMAIL PROTECTED]@osg@@QAEAAMXZ) > referenced in function "public: bool __thiscall vpb::DataSet::addModel(enum > vpb::Source::Type,class osg::Node *)" > ([EMAIL PROTECTED]@vpb@@[EMAIL PROTECTED]@[EMAIL PROTECTED]@osg@@@Z) > 3>DataSet.obj : error LNK2019: unresolved external symbol > "__declspec(dllimport) public: float & __thiscall > osg::BoundingBox::xMax(void)" ([EMAIL PROTECTED]@osg@@QAEAAMXZ) > referenced in function "public: bool __thiscall vpb::DataSet::addModel(enum > vpb::Source::Type,class osg::Node *)" > ([EMAIL PROTECTED]@vpb@@[EMAIL PROTECTED]@[EMAIL PROTECTED]@osg@@@Z) > 3>DataSet.obj : error LNK2019: unresolved external symbol > "__declspec(dllimport) public: float & __thiscall > osg::BoundingBox::xMin(void)" ([EMAIL PROTECTED]@osg@@QAEAAMXZ) > referenced in function "public: bool __thiscall vpb::DataSet::addModel(enum > vpb::Source::Type,class osg::Node *)" > ([EMAIL PROTECTED]@vpb@@[EMAIL PROTECTED]@[EMAIL PROTECTED]@osg@@@Z) > 3>Destination.obj : error LNK2019: unresolved external symbol > "__declspec(dllimport) public: float __thiscall > osg::BoundingBox::radius(void)const " > ([EMAIL PROTECTED]@osg@@QBEMXZ) referenced in function "public: > class osg::Node * __thiscall vpb::DestinationTile::createHeightField(void)" > ([EMAIL PROTECTED]@vpb@@[EMAIL PROTECTED]@@XZ) > 3>ShapeFilePlacer.obj : error LNK2019: unresolved external symbol > "__declspec(dllimport) public: float __thiscall > osg::BoundingBox::yMax(void)const " ([EMAIL PROTECTED]@osg@@QBEMXZ) > referenced in function "public: virtual void __thiscall > ShapeFileOverlapingHeightFieldPlacer::apply(class osg::Geode &)" > ([EMAIL PROTECTED]@@[EMAIL PROTECTED]@@@Z) > 3>ShapeFilePlacer.obj : error LNK2019: unresolved external symbol > "__declspec(dllimport) public: float __thiscall > osg::BoundingBox::xMax(void)const " ([EMAIL PROTECTED]@osg@@QBEMXZ) > referenced in function "public: virtual void __thiscall > ShapeFileOverlapingHeightFieldPlacer::apply(class osg::Geode &)" > ([EMAIL PROTECTED]@@[EMAIL PROTECTED]@@@Z) > 3>ShapeFilePlacer.obj : error LNK2019: unresolved external symbol > "__declspec(dllimport) public: float __thiscall > osg::BoundingBox::yMin(void)const " ([EMAIL PROTECTED]@osg@@QBEMXZ) > referenced in function "public: virtual void __thiscall > ShapeFileOverlapingHeightFieldPlacer::apply(class osg::Geode &)" > ([EMAIL PROTECTED]@@[EMAIL PROTECTED]@@@Z) > 3>ShapeFilePlacer.obj : error LNK2019: unresolved external symbol > "__declspec(dllimport) public: float __thiscall > osg::BoundingBox::xMin(void)const " ([EMAIL PROTECTED]@osg@@QBEMXZ) > referenced in function "public: virtual void __thiscall > ShapeFileOverlapingHeightFieldPlacer::apply(class osg::Geode &)" > ([EMAIL PROTECTED]@@[EMAIL PROTECTED]@@@Z) > > > So, I have added the same two options as OSG in Cmake for VPB : > > OPTION(OSG_USE_FLOAT_BOUNDINGSPHERE "Set to ON to build VirtualPlanetBuilder > with float BoundingSphere instead of double." ON) > MARK_AS_ADVANCED(OSG_USE_FLOAT_BOUNDINGSPHERE) > IF(NOT OSG_USE_FLOAT_BOUNDINGSPHERE) > ADD_DEFINITIONS(-DOSG_USE_DOUBLE_BOUNDINGSPHERE) > ENDIF(NOT OSG_USE_FLOAT_BOUNDINGSPHERE) > > OPTION(OSG_USE_FLOAT_BOUNDINGBOX "Set to ON to build VirtualPlanetBuilder > with float BoundingBox instead of double." ON) > MARK_AS_ADVANCED(OSG_USE_FLOAT_BOUNDINGBOX) > IF(NOT OSG_USE_FLOAT_BOUNDINGBOX) > ADD_DEFINITIONS(-DOSG_USE_DOUBLE_BOUNDINGBOX) > ENDIF(NOT OSG_USE_FLOAT_BOUNDINGBOX) > > With these two options, It build fine. Maybe we could do a better thing, > like checking if OSG was build with OSG_USE_FLOAT_BOUNDINGBOX or not, and > set the same thing for VPB. But I don't know enough CMake to do that ! > > > Here is the modify CMakeLists.txt for VPB. > > > Regards. > > -- > Christophe Loustaunau. > _______________________________________________ > osg-submissions mailing list > [email protected] > http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org > > _______________________________________________ osg-submissions mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org
