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
