Hi Ryan,
thank you very much for directing me to cppintrospection.
This helped me a lot. I even got the most osg library wrappers compiled after
generation of the osg wrappers and
fixing some minor problems like:
- adding libraries to link against, like cppinstrospection.lib,
osg.lib and OpenThreads.lib (they somehow are missing in the wrapper libs)
- adding an #include where it was reported as
unknown identifier
- correcting some TYPE_NAME_ALIASES dealing with function pointers,
e.g.:
TYPE_NAME_ALIAS(void*(osgDB::ObjectWrapper*),
osgDB::RegisterWrapperProxy::AddPropFunc)
(was generated as "TYPE_NAME_ALIAS(void(*,
osgDB::RegisterWrapperProxy::AddPropFunc)" , with a closing bracket missing )
But I'm again stuck at compiling osgDB wrapper, with the following error
message:
1>-- Build started: Project: osgwrapper_osgDB, Configuration: Release Win32
--
1> OutputStream.cpp
1>D:\development\visual studio 2010\VC\include\sstream(724): error C2248:
'std::basic_ios<_Elem,_Traits>::basic_ios' : cannot access private member
declared in class 'std::basic_ios<_Elem,_Traits>'
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits
1> ]
1> D:\development\visual studio 2010\VC\include\ios(176) : see
declaration of 'std::basic_ios<_Elem,_Traits>::basic_ios'
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits
1> ]
1> This diagnostic occurred in the compiler generated function
'std::basic_stringstream<_Elem,_Traits,_Alloc>::basic_stringstream(const
std::basic_stringstream<_Elem,_Traits,_Alloc> &)'
1> with
1> [
1> _Elem=char,
1> _Traits=std::char_traits,
1> _Alloc=std::allocator
1> ]
I cannot track that down, to correct it. Any advice or help is welcome.
Thanks in advance.
Cheers,
Carsten
_
Carsten Scharfe
Software Developer
Experiment Software ESIM
dSPACE GmbH
Rathenaustraße 26
33102 Paderborn
Germany
Tel.: +49 5251 1638-1920
http://www.dspace.com
mailto:cscha...@dspace.de
_
From: osg-users-boun...@lists.openscenegraph.org
[mailto:osg-users-boun...@lists.openscenegraph.org] On Behalf Of Ryan Pavlik
Sent: Monday, August 01, 2011 7:01 PM
To: OpenSceneGraph Users
Subject: Re: [osg-users] compiling trunk of osgIntrospection with osg3.0with
vs2010
I've gotten fairly close to building this, even using the Clang compiler.
You'll want to get my fork of the 'cppintrospection' library, which is just a
name-change of osgIntrospection with some updates.
https://github.com/rpavlik/cppintrospection
There were a number of changes to the config needed, and I made a number of
other fixes in the wrapper generator, as well as the library itself. This
improved version also includes a single-step generate and build of wrappers,
and also reduces the size of the wrapper libraries by reducing the number of
reflection template instantiations required.
I've used it successfully with the 2.8 branch and the Clang compiler on Linux -
haven't tested it on other platforms yet but I've been careful to keep it
cross-platform.
Ryan
On Mon, Aug 1, 2011 at 8:46 AM, Carsten Scharfe
mailto:cscha...@dspace.de>> wrote:
Hi All,
I'm trying to compile osgIntrospection with OSG 3.0.0 in Visual Studio 2010.
While osgIntrospection compiles, the osgWrappers (e.g. Wrapper osg) do not.
It seem to be that VS2010 has severe Problems with finding operator-methods of
classes such
as string or map. Maybe this is a template instatiation issue.
The error messages I'll get from VS2010:
"1>E:\OpenSceneGraph-3.0.0\include\osg/State(2477): error C2784: 'bool
std::operator <(const std::move_iterator<_RanIt> &,const
std::move_iterator<_RanIt2> &)' : could not deduce template argument for 'const
std::move_iterator<_RanIt> &' from 'const std::string'
1> D:\development\visual studio 2010\VC\include\iterator(371) : see
declaration of 'std::operator <'"
or
"1>E:\OpenSceneGraph-3.0.0\osgIntrospection\include\osgIntrospection/ReaderWriter(217):
error C2678: binary '>>' : no operator found which takes a left-hand operand
of type 'std::istream' (or there is no acceptable conversion)
1. D:\development\visual studio 2010\VC\include\istream(1053): could be
'std::basic_istream<_Elem,_Traits> &std::operator
>>>(std::basic_istream<_Elem,_Traits> &&,signed char *)'
[found using argument-dependent lookup]"
In need some hints or help to sort this out. I'm definitely stuck.