Advice for linker errors in VS2005
by Gordon Marsh · in Torque Game Engine · 12/19/2006 (5:32 am) · 3 replies
I have pretty much completed what I want to do with the engine, and as a final piece of work I was hoping to incorporate this resource to turn Torque into a browser plug-in:
tdn.garagegames.com/wiki/TGE/Code/How_to_make_torque_a_plugin
I had to make a few c++ changes to get it to compile (as it was made in VS2003.NET and I'm now using VS2005) but I got all the changes in and it compiles.
Unfortunately I now get thousands of linker errors such as:
wheeledVehicle.obj : error LNK2001: unresolved external symbol "const type_info::'vftable'" (??_7type_info@@6B@)
The plug-in is a seperate project in the visual studio solution. The original "Torque Demo" project still compiles.
Can anyone help with advice as to what settings need to be changed? I have been adding in all sorts of Include directories but to no avail :(
Gords
tdn.garagegames.com/wiki/TGE/Code/How_to_make_torque_a_plugin
I had to make a few c++ changes to get it to compile (as it was made in VS2003.NET and I'm now using VS2005) but I got all the changes in and it compiles.
Unfortunately I now get thousands of linker errors such as:
wheeledVehicle.obj : error LNK2001: unresolved external symbol "const type_info::'vftable'" (??_7type_info@@6B@)
The plug-in is a seperate project in the visual studio solution. The original "Torque Demo" project still compiles.
Can anyone help with advice as to what settings need to be changed? I have been adding in all sorts of Include directories but to no avail :(
Gords
#2
Unfortunately it now seems to be fairly random objects causing the errors...
12/21/2006 (12:23 pm)
Thanks for the hints Alex, but I have the two of those included already. By tinkering a bit myself I have reduced the linker errors down though to the following:Unfortunately it now seems to be fairly random objects causing the errors...
1>worldEditor.obj : error LNK2019: unresolved external symbol "public: void __thiscall AIPathNodeGraph::renderPaths(void)" (?renderPaths@AIPathNodeGraph@@QAEXXZ) referenced in function "public: virtual void __thiscall WorldEditor::renderScene(class RectI const &)" (?renderScene@WorldEditor@@UAEXABVRectI@@@Z) 1>guiCanvas.obj : error LNK2019: unresolved external symbol "public: static void __cdecl GuiDragDropButtonCtrl::consoleInit(void)" (?consoleInit@GuiDragDropButtonCtrl@@SAXXZ) referenced in function "public: virtual void __thiscall ConcreteClassRep<class GuiDragDropButtonCtrl>::init(void)const " (?init@?$ConcreteClassRep@VGuiDragDropButtonCtrl@@@@UBEXXZ) 1>guiCanvas.obj : error LNK2019: unresolved external symbol "public: static void __cdecl GuiDragDropButtonCtrl::initPersistFields(void)" (?initPersistFields@GuiDragDropButtonCtrl@@SAXXZ) referenced in function "public: virtual void __thiscall ConcreteClassRep<class GuiDragDropButtonCtrl>::init(void)const " (?init@?$ConcreteClassRep@VGuiDragDropButtonCtrl@@@@UBEXXZ) 1>guiCanvas.obj : error LNK2019: unresolved external symbol "public: __thiscall GuiDragDropButtonCtrl::GuiDragDropButtonCtrl(void)" (??0GuiDragDropButtonCtrl@@QAE@XZ) referenced in function "public: virtual class ConsoleObject * __thiscall ConcreteClassRep<class GuiDragDropButtonCtrl>::create(void)const " (?create@?$ConcreteClassRep@VGuiDragDropButtonCtrl@@@@UBEPAVConsoleObject@@XZ) 1>game.obj : error LNK2001: unresolved external symbol "class Celestials * gCelestials" (?gCelestials@@3PAVCelestials@@A) 1>fxSunLight.obj : error LNK2001: unresolved external symbol "class Celestials * gCelestials" (?gCelestials@@3PAVCelestials@@A) 1>lightManager.obj : error LNK2001: unresolved external symbol "class Celestials * gCelestials" (?gCelestials@@3PAVCelestials@@A) 1>fluidRender.obj : error LNK2001: unresolved external symbol "class Celestials * gCelestials" (?gCelestials@@3PAVCelestials@@A) 1>sky.obj : error LNK2001: unresolved external symbol "class Celestials * gCelestials" (?gCelestials@@3PAVCelestials@@A) 1>terrRender.obj : error LNK2001: unresolved external symbol "class Celestials * gCelestials" (?gCelestials@@3PAVCelestials@@A) 1>fluidRender.obj : error LNK2019: unresolved external symbol "public: void __thiscall Celestials::DisableLighting(void)" (?DisableLighting@Celestials@@QAEXXZ) referenced in function "public: void __thiscall fluid::Render(bool &)" (?Render@fluid@@QAEXAA_N@Z) 1>terrRender.obj : error LNK2001: unresolved external symbol "public: void __thiscall Celestials::DisableLighting(void)" (?DisableLighting@Celestials@@QAEXXZ) 1>fluidRender.obj : error LNK2019: unresolved external symbol "public: void __thiscall Celestials::EnableLighting(float)" (?EnableLighting@Celestials@@QAEXM@Z) referenced in function "public: void __thiscall fluid::Render(bool &)" (?Render@fluid@@QAEXAA_N@Z) 1>terrRender.obj : error LNK2001: unresolved external symbol "public: void __thiscall Celestials::EnableLighting(float)" (?EnableLighting@Celestials@@QAEXM@Z) 1>player.obj : error LNK2019: unresolved external symbol "public: __thiscall HeightChangeEvent::HeightChangeEvent(void)" (??0HeightChangeEvent@@QAE@XZ) referenced in function "public: void __thiscall Player::sendHeightToClient(float,int)" (?sendHeightToClient@Player@@QAEXMH@Z) 1>player.obj : error LNK2019: unresolved external symbol "public: void __thiscall BitmapText::setText(char const *)" (?setText@BitmapText@@QAEXPBD@Z) referenced in function "private: void __thiscall Player::generateNameBitmap(void)" (?generateNameBitmap@Player@@AAEXXZ) 1>player.obj : error LNK2019: unresolved external symbol "public: __thiscall BitmapText::BitmapText(class GBitmap const &)" (??0BitmapText@@QAE@ABVGBitmap@@@Z) referenced in function "private: void __thiscall Player::generateNameBitmap(void)" (?generateNameBitmap@Player@@AAEXXZ) 1>player.obj : error LNK2019: unresolved external symbol "public: static int __cdecl TeamCircleManager::findCircle(class Player *)" (?findCircle@TeamCircleManager@@SAHPAVPlayer@@@Z) referenced in function "public: int __thiscall Player::getCircleNumber(void)" (?getCircleNumber@Player@@QAEHXZ) 1>player.obj : error LNK2019: unresolved external symbol "public: static void __cdecl TeamCircleManager::joinCircle(class Player *,int)" (?joinCircle@TeamCircleManager@@SAXPAVPlayer@@H@Z) referenced in function "public: void __thiscall Player::playerJoinCircle(int)" (?playerJoinCircle@Player@@QAEXH@Z) 1>player.obj : error LNK2019: unresolved external symbol "public: static int __cdecl TeamCircleManager::addNewCircle(class Player *)" (?addNewCircle@TeamCircleManager@@SAHPAVPlayer@@@Z) referenced in function "public: int __thiscall Player::playerCreateNewCircle(void)" (?playerCreateNewCircle@Player@@QAEHXZ) 1>player.obj : error LNK2019: unresolved external symbol "public: static void __cdecl TeamCircleManager::leaveCircle(class Player *)" (?leaveCircle@TeamCircleManager@@SAXPAVPlayer@@@Z) referenced in function "public: void __thiscall Player::playerLeaveCircle(void)" (?playerLeaveCircle@Player@@QAEXXZ) 1>player.obj : error LNK2019: unresolved external symbol "public: __thiscall BitmapText::BitmapText(void)" (??0BitmapText@@QAE@XZ) referenced in function "public: __thiscall Player::Player(void)" (??0Player@@QAE@XZ) 1>player.obj : error LNK2019: unresolved external symbol "public: __thiscall AnimationEvent::AnimationEvent(void)" (??0AnimationEvent@@QAE@XZ) referenced in function "public: void __thiscall Player::sendAnimationRequest(char const *)" (?sendAnimationRequest@Player@@QAEXPBD@Z) 1>player.obj : error LNK2019: unresolved external symbol "public: __thiscall ChatChangeEvent::ChatChangeEvent(void)" (??0ChatChangeEvent@@QAE@XZ) referenced in function "private: void __thiscall Player::sendChatUpdateToServer(char const *)" (?sendChatUpdateToServer@Player@@AAEXPBD@Z) 1>player.obj : error LNK2019: unresolved external symbol "public: __thiscall ClientJoinChatEvent::ClientJoinChatEvent(void)" (??0ClientJoinChatEvent@@QAE@XZ) referenced in function "public: void __thiscall Player::sendServerJoinCircle(int)" (?sendServerJoinCircle@Player@@QAEXH@Z) 1>player.obj : error LNK2019: unresolved external symbol "public: __thiscall ClientLeaveChatEvent::ClientLeaveChatEvent(void)" (??0ClientLeaveChatEvent@@QAE@XZ) referenced in function "public: void __thiscall Player::sendServerLeaveCircle(void)" (?sendServerLeaveCircle@Player@@QAEXXZ) 1>player.obj : error LNK2019: unresolved external symbol "public: __thiscall TeleportEvent::TeleportEvent(void)" (??0TeleportEvent@@QAE@XZ) referenced in function "public: void __thiscall Player::tellServerTeleportPlayer(char const *,unsigned int)" (?tellServerTeleportPlayer@Player@@QAEXPBDI@Z) 1>player.obj : error LNK2019: unresolved external symbol "public: __thiscall PlayerTeleportEvent::PlayerTeleportEvent(void)" (??0PlayerTeleportEvent@@QAE@XZ) referenced in function "public: void __thiscall Player::tellServerTeleportToPlayer(int)" (?tellServerTeleportToPlayer@Player@@QAEXH@Z) 1>fxSunLight.obj : error LNK2019: unresolved external symbol "public: void __thiscall Celestials::UpdateSunPosition(void)" (?UpdateSunPosition@Celestials@@QAEXXZ) referenced in function "private: void __thiscall fxSunLight::AnimateSun(float)" (?AnimateSun@fxSunLight@@AAEXM@Z) 1>..\engine\out.Plugin.Release/np3DPlugin.dll : fatal error LNK1120: 22 unresolved externals 1>Build log was saved at "file://c:\TORQUE_HEAD_DEV\torque\engine\out.Plugin.Release\BuildLog.htm" 1>np3DPlugin - 30 error(s), 76 warning(s)
#3
I'm using the MMOKit and have introduced my own files into the engine. All I needed to do was copy some additional MMOKit .cc and .h files and my own unique ones into the IEPlugin project... obviously it had no idea about them!!
Gords
12/21/2006 (3:20 pm)
Ahhhrg, ignore this post.I'm using the MMOKit and have introduced my own files into the engine. All I needed to do was copy some additional MMOKit .cc and .h files and my own unique ones into the IEPlugin project... obviously it had no idea about them!!
Gords
Torque Owner Alex Huck
Default Studio Name
DirectX
Platform SDK Installed and linked, as well as the Microsoft Platform SDK