Hi Tim,

I've just do a make wrappers and attempted to build the wrappers (by
enabling them via ccmake .) and have found lots of build errors
associated with attempts to wrap the various ref_ptr<>'s that the OSG
has.  The errors are of the form:

[ 65%] Building CXX object
src/osgWrappers/introspection/CMakeFiles/osgwrapper_osgVolume.dir/osgVolume/Locator.o
/home/robert/OpenSceneGraph/include/osgIntrospection/ExtendedTypeInfo:
In function ‘osgIntrospection::ExtendedTypeInfo extended_typeid()
[with T = osg::observer_ptr<osgVolume::Locator::LocatorCallback>&]’:
/home/robert/OpenSceneGraph/src/osgWrappers/introspection/osgVolume/Locator.cpp:199:
  instantiated from here
/home/robert/OpenSceneGraph/include/osgIntrospection/ExtendedTypeInfo:120:
error: invalid use of incomplete type ‘struct
osg::observer_ptr<osgVolume::Locator::LocatorCallback>’
/home/robert/OpenSceneGraph/include/osg/ref_ptr:21: error: declaration
of ‘struct osg::observer_ptr<osgVolume::Locator::LocatorCallback>’
/home/robert/OpenSceneGraph/include/osg/ref_ptr: In constructor
‘osg::ref_ptr<T>::ref_ptr(osg::observer_ptr<T>&) [with T =
osgVolume::Locator::LocatorCallback]’:
/home/robert/OpenSceneGraph/include/osgIntrospection/InstanceCreator:230:
  instantiated from ‘static osgIntrospection::Value
osgIntrospection::ValueInstanceCreator<T>::create(osgIntrospection::Value&)
[with P0 = osg::observer_ptr<osgVolume::Locator::LocatorCallback>&, T
= osg::ref_ptr<osgVolume::Locator::LocatorCallback>]’
/home/robert/OpenSceneGraph/include/osgIntrospection/TypedConstructorInfo:54:
  instantiated from ‘osgIntrospection::Value
osgIntrospection::TypedConstructorInfo1<C, IC,
P0>::createInstance(osgIntrospection::ValueList&) const [with C =
osg::ref_ptr<osgVolume::Locator::LocatorCallback>, IC =
osgIntrospection::ValueInstanceCreator<osg::ref_ptr<osgVolume::Locator::LocatorCallback>
>, P0 = osg::observer_ptr<osgVolume::Locator::LocatorCallback>&]’
/home/robert/OpenSceneGraph/src/osgWrappers/introspection/osgVolume/Locator.cpp:229:
  instantiated from here
/home/robert/OpenSceneGraph/include/osg/ref_ptr:34: error: invalid use
of incomplete type ‘struct
osg::observer_ptr<osgVolume::Locator::LocatorCallback>’
/home/robert/OpenSceneGraph/include/osg/ref_ptr:21: error: declaration
of ‘struct osg::observer_ptr<osgVolume::Locator::LocatorCallback>’
make[2]: *** 
[src/osgWrappers/introspection/CMakeFiles/osgwrapper_osgVolume.dir/osgVolume/Locator.o]
Error 1
make[1]: *** 
[src/osgWrappers/introspection/CMakeFiles/osgwrapper_osgVolume.dir/all]
Error 2
make[1]: *** Waiting for unfinished jobs....

I've done a quick hack of adding an #include<osg/observer_ptr> into
the problem src/osgWrappers/introspection/*/* files and this gets the
build up an running once more, but... make wrappers (that invokes the
genwrapper tool) doesn't know about how to do this.  I've had a quick
look at the src/osgWrappers/introspection/genwrapper.conf file and had
a try at getting it to insert the include for us, but as yet haven't
been able to trick it into working.

Do you have experience with genwrappers/introspection?  This error is
rather a show stopper for building the OSG when wrappers are turned on
as there are many instances of this problem now rearing it's head
across the autogenerated wrappers.

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

Reply via email to