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
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org