Hi, I have tried to build OpenSceneGraph 3.2.0 with FBX support. But I am getting linker errors when linking with FBX SDK libraries. I have tried both 2013.3 version and 2014.1 version of the FBX SDK to no avail.
I am building a 32-bit version on Windows 7 with Visual Studio 2010. I get the following errors with the 2013.3 FBX version: Code: IMPORTANT NOTE: The FBX SDK API changed substantially. Please define FBXSDK_NEW_API in your project and fix compilation errors as instructed in fbxsdk_compatibility.h. fbxRAnimation.obj : error LNK2001: unresolved external symbol "private: static void (__cdecl* fbxsdk_2013_3::FbxAnimCurveKey::mDeallocatorFct)(class fbxsdk_2013_3::FbxAnimCurveKey_Impl *)" (?mDeallocatorFct@FbxAnimCurveKey@fbxsdk_2013_3@@0P6AXPAVFbxAnimCurveKey_Impl@2@@ZA) fbxRMesh.obj : error LNK2019: unresolved external symbol "private: static void (__cdecl* fbxsdk_2013_3::FbxAnimCurveKey::mDeallocatorFct)(class fbxsdk_2013_3::FbxAnimCurveKey_Impl *)" (?mDeallocatorFct@FbxAnimCurveKey@fbxsdk_2013_3@@0P6AXPAVFbxAnimCurveKey_Impl@2@@ZA) referenced in function "class osg::Geometry * __cdecl getGeometry(class osg::Geode *,class std::map<unsigned int,class osg::ref_ptr<class osg::Geometry>,struct std::less<unsigned int>,class std::allocator<struct std::pair<unsigned int const ,class osg::ref_ptr<class osg::Geometry> > > > &,class std::vector<struct StateSetContent,class std::allocator<struct StateSetContent> > &,enum GeometryType,unsigned int,bool,bool,bool,bool,bool,class osgDB::Options const &,bool)" (?getGeometry@@YAPAVGeometry@osg@@PAVGeode@2@AAV?$map@IV?$ref_ptr@VGeometry@osg@@@osg@@U?$less@I@std@@V?$allocator@U?$pair@$$CBIV?$ref_ptr@VGeometry@osg@@@osg@@@std@@@4@@std@@AAV?$vector@UStateSetContent@@V?$allocator@UStateSetContent@@@std@@@5@W4Ge ometryType@@I_N4444ABVOptions@osgDB@@4@Z) fbxRAnimation.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2013_3::FbxClassId fbxsdk_2013_3::FbxAnimStack::ClassId" (?ClassId@FbxAnimStack@fbxsdk_2013_3@@2VFbxClassId@2@A) fbxRMesh.obj : error LNK2019: unresolved external symbol "public: static class fbxsdk_2013_3::FbxClassId fbxsdk_2013_3::FbxAnimStack::ClassId" (?ClassId@FbxAnimStack@fbxsdk_2013_3@@2VFbxClassId@2@A) referenced in function "public: bool __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::_Grow(unsigned int,bool)" (?_Grow@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE_NI_N@Z) fbxRNode.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2013_3::FbxClassId fbxsdk_2013_3::FbxAnimStack::ClassId" (?ClassId@FbxAnimStack@fbxsdk_2013_3@@2VFbxClassId@2@A) fbxRAnimation.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2013_3::FbxClassId fbxsdk_2013_3::FbxAnimLayer::ClassId" (?ClassId@FbxAnimLayer@fbxsdk_2013_3@@2VFbxClassId@2@A) fbxRMesh.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2013_3::FbxClassId fbxsdk_2013_3::FbxAnimLayer::ClassId" (?ClassId@FbxAnimLayer@fbxsdk_2013_3@@2VFbxClassId@2@A) fbxRNode.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2013_3::FbxClassId fbxsdk_2013_3::FbxAnimLayer::ClassId" (?ClassId@FbxAnimLayer@fbxsdk_2013_3@@2VFbxClassId@2@A) fbxRCamera.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2013_3::FbxClassId fbxsdk_2013_3::FbxCamera::ClassId" (?ClassId@FbxCamera@fbxsdk_2013_3@@2VFbxClassId@2@A) fbxRLight.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2013_3::FbxClassId fbxsdk_2013_3::FbxLight::ClassId" (?ClassId@FbxLight@fbxsdk_2013_3@@2VFbxClassId@2@A) fbxRMesh.obj : error LNK2001: unresolved external symbol "public: static char const * const fbxsdk_2013_3::FbxSurfaceMaterial::sEmissive" (?sEmissive@FbxSurfaceMaterial@fbxsdk_2013_3@@2PBDB) fbxMaterialToOsgStateSet.obj : error LNK2001: unresolved external symbol "public: static char const * const fbxsdk_2013_3::FbxSurfaceMaterial::sEmissive" (?sEmissive@FbxSurfaceMaterial@fbxsdk_2013_3@@2PBDB) fbxRMesh.obj : error LNK2001: unresolved external symbol "public: static char const * const fbxsdk_2013_3::FbxSurfaceMaterial::sReflection" (?sReflection@FbxSurfaceMaterial@fbxsdk_2013_3@@2PBDB) fbxMaterialToOsgStateSet.obj : error LNK2001: unresolved external symbol "public: static char const * const fbxsdk_2013_3::FbxSurfaceMaterial::sReflection" (?sReflection@FbxSurfaceMaterial@fbxsdk_2013_3@@2PBDB) fbxRMesh.obj : error LNK2001: unresolved external symbol "public: static char const * const fbxsdk_2013_3::FbxSurfaceMaterial::sTransparentColor" (?sTransparentColor@FbxSurfaceMaterial@fbxsdk_2013_3@@2PBDB) fbxMaterialToOsgStateSet.obj : error LNK2019: unresolved external symbol "public: static char const * const fbxsdk_2013_3::FbxSurfaceMaterial::sTransparentColor" (?sTransparentColor@FbxSurfaceMaterial@fbxsdk_2013_3@@2PBDB) referenced in function "public: __thiscall std::_Tree_unchecked_const_iterator<class std::_Tree_val<class std::_Tmap_traits<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class osg::Texture2D *,struct std::less<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > >,class std::allocator<struct std::pair<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const ,class osg::Texture2D *> >,0> >,struct std::_Iterator_base12>::_Tree_unchecked_const_iterator<class std::_Tree_val<class std::_Tmap_traits<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class osg::Texture2D *,struct std::less<class std::basic_string<ch ar,struct std::char_traits<char>,class std::allocator<char> > >,class std::allocator<struct std::pair<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const ,class osg::Texture2D *> >,0> >,struct std::_Iterator_base12>(class std::_Tree_unchecked_const_iterator<class std::_Tree_val<class std::_Tmap_traits<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class osg::Texture2D *,struct std::less<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > >,class std::allocator<struct std::pair<class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const ,class osg::Texture2D *> >,0> >,struct std::_Iterator_base12> const &)" (??0?$_Tree_unchecked_const_iterator@V?$_Tree_val@V?$_Tmap_traits@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAVTexture2D@osg@@U?$less@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@V?$ allocator@U?$pair@$$CBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@PAVTexture2D@osg@@@std@@@2@$0A@@std@@@std@@U_Iterator_base12@2@@std@@QAE@ABV01@@Z) fbxRMesh.obj : error LNK2001: unresolved external symbol "public: static char const * const fbxsdk_2013_3::FbxSurfaceMaterial::sDiffuse" (?sDiffuse@FbxSurfaceMaterial@fbxsdk_2013_3@@2PBDB) fbxMaterialToOsgStateSet.obj : error LNK2001: unresolved external symbol "public: static char const * const fbxsdk_2013_3::FbxSurfaceMaterial::sDiffuse" (?sDiffuse@FbxSurfaceMaterial@fbxsdk_2013_3@@2PBDB) fbxRMesh.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2013_3::FbxClassId fbxsdk_2013_3::FbxBlendShape::ClassId" (?ClassId@FbxBlendShape@fbxsdk_2013_3@@2VFbxClassId@2@A) fbxRMesh.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2013_3::FbxClassId fbxsdk_2013_3::FbxMesh::ClassId" (?ClassId@FbxMesh@fbxsdk_2013_3@@2VFbxClassId@2@A) ReaderWriterFBX.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2013_3::FbxAxisSystem const fbxsdk_2013_3::FbxAxisSystem::OpenGL" (?OpenGL@FbxAxisSystem@fbxsdk_2013_3@@2V12@B) ReaderWriterFBX.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2013_3::FbxClassId fbxsdk_2013_3::FbxGeometry::ClassId" (?ClassId@FbxGeometry@fbxsdk_2013_3@@2VFbxClassId@2@A) fbxMaterialToOsgStateSet.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2013_3::FbxClassId fbxsdk_2013_3::FbxFileTexture::ClassId" (?ClassId@FbxFileTexture@fbxsdk_2013_3@@2VFbxClassId@2@A) fbxMaterialToOsgStateSet.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2013_3::FbxClassId fbxsdk_2013_3::FbxSurfaceLambert::ClassId" (?ClassId@FbxSurfaceLambert@fbxsdk_2013_3@@2VFbxClassId@2@A) fbxMaterialToOsgStateSet.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2013_3::FbxClassId fbxsdk_2013_3::FbxSurfacePhong::ClassId" (?ClassId@FbxSurfacePhong@fbxsdk_2013_3@@2VFbxClassId@2@A) C:\OpenSceneGraph\bin\osgPlugins-3.2.0\osgdb_fbxd.dll : fatal error LNK1120: 16 unresolved externals And the following errors with the 2014.1 FBX version: Code: 2>fbxRAnimation.obj : error LNK2001: unresolved external symbol "private: static void (__cdecl* fbxsdk_2014_1::FbxAnimCurveKey::mDeallocatorFct)(class fbxsdk_2014_1::FbxAnimCurveKey_Impl *)" (?mDeallocatorFct@FbxAnimCurveKey@fbxsdk_2014_1@@0P6AXPAVFbxAnimCurveKey_Impl@2@@ZA) fbxRMesh.obj : error LNK2019: unresolved external symbol "private: static void (__cdecl* fbxsdk_2014_1::FbxAnimCurveKey::mDeallocatorFct)(class fbxsdk_2014_1::FbxAnimCurveKey_Impl *)" (?mDeallocatorFct@FbxAnimCurveKey@fbxsdk_2014_1@@0P6AXPAVFbxAnimCurveKey_Impl@2@@ZA) referenced in function "class osg::Geometry * __cdecl getGeometry(class osg::Geode *,class std::map<unsigned int,class osg::ref_ptr<class osg::Geometry>,struct std::less<unsigned int>,class std::allocator<struct std::pair<unsigned int const ,class osg::ref_ptr<class osg::Geometry> > > > &,class std::vector<struct StateSetContent,class std::allocator<struct StateSetContent> > &,enum GeometryType,unsigned int,bool,bool,bool,bool,bool,class osgDB::Options const &,bool)" (?getGeometry@@YAPAVGeometry@osg@@PAVGeode@2@AAV?$map@IV?$ref_ptr@VGeometry@osg@@@osg@@U?$less@I@std@@V?$allocator@U?$pair@$$CBIV?$ref_ptr@VGeometry@osg@@@osg@@@std@@@4@@std@@AAV?$vector@UStateSetContent@@V?$allocator@UStateSetContent@@@std@@@5@W4Ge ometryType@@I_N4444ABVOptions@osgDB@@4@Z) fbxRAnimation.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2014_1::FbxClassId fbxsdk_2014_1::FbxAnimStack::ClassId" (?ClassId@FbxAnimStack@fbxsdk_2014_1@@2VFbxClassId@2@A) fbxRMesh.obj : error LNK2019: unresolved external symbol "public: static class fbxsdk_2014_1::FbxClassId fbxsdk_2014_1::FbxAnimStack::ClassId" (?ClassId@FbxAnimStack@fbxsdk_2014_1@@2VFbxClassId@2@A) referenced in function "public: bool __thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::_Grow(unsigned int,bool)" (?_Grow@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE_NI_N@Z) fbxRNode.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2014_1::FbxClassId fbxsdk_2014_1::FbxAnimStack::ClassId" (?ClassId@FbxAnimStack@fbxsdk_2014_1@@2VFbxClassId@2@A) fbxRAnimation.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2014_1::FbxClassId fbxsdk_2014_1::FbxAnimLayer::ClassId" (?ClassId@FbxAnimLayer@fbxsdk_2014_1@@2VFbxClassId@2@A) fbxRMesh.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2014_1::FbxClassId fbxsdk_2014_1::FbxAnimLayer::ClassId" (?ClassId@FbxAnimLayer@fbxsdk_2014_1@@2VFbxClassId@2@A) fbxRNode.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2014_1::FbxClassId fbxsdk_2014_1::FbxAnimLayer::ClassId" (?ClassId@FbxAnimLayer@fbxsdk_2014_1@@2VFbxClassId@2@A) fbxRCamera.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2014_1::FbxClassId fbxsdk_2014_1::FbxCamera::ClassId" (?ClassId@FbxCamera@fbxsdk_2014_1@@2VFbxClassId@2@A) fbxRLight.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2014_1::FbxClassId fbxsdk_2014_1::FbxLight::ClassId" (?ClassId@FbxLight@fbxsdk_2014_1@@2VFbxClassId@2@A) fbxRMesh.obj : error LNK2001: unresolved external symbol "public: static char const * const fbxsdk_2014_1::FbxSurfaceMaterial::sEmissive" (?sEmissive@FbxSurfaceMaterial@fbxsdk_2014_1@@2PBDB) fbxMaterialToOsgStateSet.obj : error LNK2001: unresolved external symbol "public: static char const * const fbxsdk_2014_1::FbxSurfaceMaterial::sEmissive" (?sEmissive@FbxSurfaceMaterial@fbxsdk_2014_1@@2PBDB) fbxRMesh.obj : error LNK2001: unresolved external symbol "public: static char const * const fbxsdk_2014_1::FbxSurfaceMaterial::sReflection" (?sReflection@FbxSurfaceMaterial@fbxsdk_2014_1@@2PBDB) fbxMaterialToOsgStateSet.obj : error LNK2001: unresolved external symbol "public: static char const * const fbxsdk_2014_1::FbxSurfaceMaterial::sReflection" (?sReflection@FbxSurfaceMaterial@fbxsdk_2014_1@@2PBDB) fbxRMesh.obj : error LNK2001: unresolved external symbol "public: static char const * const fbxsdk_2014_1::FbxSurfaceMaterial::sTransparentColor" (?sTransparentColor@FbxSurfaceMaterial@fbxsdk_2014_1@@2PBDB) fbxMaterialToOsgStateSet.obj : error LNK2001: unresolved external symbol "public: static char const * const fbxsdk_2014_1::FbxSurfaceMaterial::sTransparentColor" (?sTransparentColor@FbxSurfaceMaterial@fbxsdk_2014_1@@2PBDB) fbxRMesh.obj : error LNK2001: unresolved external symbol "public: static char const * const fbxsdk_2014_1::FbxSurfaceMaterial::sDiffuse" (?sDiffuse@FbxSurfaceMaterial@fbxsdk_2014_1@@2PBDB) fbxMaterialToOsgStateSet.obj : error LNK2001: unresolved external symbol "public: static char const * const fbxsdk_2014_1::FbxSurfaceMaterial::sDiffuse" (?sDiffuse@FbxSurfaceMaterial@fbxsdk_2014_1@@2PBDB) fbxRMesh.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2014_1::FbxClassId fbxsdk_2014_1::FbxBlendShape::ClassId" (?ClassId@FbxBlendShape@fbxsdk_2014_1@@2VFbxClassId@2@A) fbxRMesh.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2014_1::FbxClassId fbxsdk_2014_1::FbxMesh::ClassId" (?ClassId@FbxMesh@fbxsdk_2014_1@@2VFbxClassId@2@A) ReaderWriterFBX.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2014_1::FbxAxisSystem const fbxsdk_2014_1::FbxAxisSystem::OpenGL" (?OpenGL@FbxAxisSystem@fbxsdk_2014_1@@2V12@B) ReaderWriterFBX.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2014_1::FbxClassId fbxsdk_2014_1::FbxGeometry::ClassId" (?ClassId@FbxGeometry@fbxsdk_2014_1@@2VFbxClassId@2@A) fbxMaterialToOsgStateSet.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2014_1::FbxClassId fbxsdk_2014_1::FbxFileTexture::ClassId" (?ClassId@FbxFileTexture@fbxsdk_2014_1@@2VFbxClassId@2@A) fbxMaterialToOsgStateSet.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2014_1::FbxClassId fbxsdk_2014_1::FbxSurfaceLambert::ClassId" (?ClassId@FbxSurfaceLambert@fbxsdk_2014_1@@2VFbxClassId@2@A) fbxMaterialToOsgStateSet.obj : error LNK2001: unresolved external symbol "public: static class fbxsdk_2014_1::FbxClassId fbxsdk_2014_1::FbxSurfacePhong::ClassId" (?ClassId@FbxSurfacePhong@fbxsdk_2014_1@@2VFbxClassId@2@A) C:\OpenSceneGraph\bin\osgPlugins-3.2.0\osgdb_fbxd.dll : fatal error LNK1120: 16 unresolved externals Cheers, Björn[/code] ------------------ Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=55825#55825 _______________________________________________ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org