Hi,

Gerrit Voss schrieb:
> Hi,
>
> On Mon, 2009-02-09 at 15:42 +0100, Christoph Schäfer wrote:
>   
>> Hi,
>>
>> I'm still working  on this but currently I have an odd problem involving 
>> template code generation.
>>
>> Right now I can compile the ported classes but somehow the compiler 
>> doesn't seem to generate code for the SField template specialization. 
>> The linker complains about a missing external symbol:
>>
>> "public: static class OSG::FieldType const & __cdecl OSG::SField<class 
>> OSG::OSGQGLWidget *,0>::getClassType(void)" 
>> (?getclasst...@?$sfield@pavosgqglwid...@osg@@$0A@@OSG@@saabvfieldt...@2@XZ)" 
>> in Funktion ""protected: static void __cdecl 
>> OSG::QTWindowBase::classDescInserter(class OSG::FieldContainerType &)" 
>> (?classdescinser...@qtwindowbase@OSG@@kaxaavfieldcontainert...@2@@Z)".
>>
>> What I tried (looking  how it was done in OpenSG 1.8) is including the 
>> following lines in OSGQT4WindowDataFielda.h right below the FieldTraits 
>> specializations:
>>
>> #ifndef OSG_COMPILEWINDOWQTINST
>> extern template class OSG_WINDOWQTLIB_DLLMAPPING SField<OSGQGLWidgetP>;
>> extern template class OSG_WINDOWQTLIB_DLLMAPPING MField<OSGQGLWidgetP>;
>> #endif
>>
>> This will end up in other missing external symbols though this seems to 
>> be the way it has been done in 1.8:
>>     
>
> that part changed quite a bit from 1.x to 2.x. The better reference
> should be OSGWIN32WindowDataFields.* from 2.x or the corresponding
> X Window stuff. 1.x is not a good reference this far down into the
> OpenSG internals.
>
> kind regards,
>   gerrit
>
>   
I tried to stick with OSGWIN32WindowDataFields.* from th 2.0 but ended 
up with the first mentioned linker error above. For me it looks like the 
compiler simply doen't generate the code for the template specialization 
and I have no idea how to solve this issue - that's why I tried to look 
on 1.8 and how it was accomplished there. The external declarations 
looked promising to me ;-)

Cheers,
Christoph

------------------------------------------------------------------------------
Create and Deploy Rich Internet Apps outside the browser with Adobe(R)AIR(TM)
software. With Adobe AIR, Ajax developers can use existing skills and code to
build responsive, highly engaging applications that combine the power of local
resources and data with the reach of the web. Download the Adobe AIR SDK and
Ajax docs to start building applications today-http://p.sf.net/sfu/adobe-com
_______________________________________________
Opensg-core mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensg-core

Reply via email to