Game Development Community

Link Error

by David Grant · in Torque Game Engine · 11/20/2005 (11:56 pm) · 8 replies

Hello I get the following errors below:

=======================================================

Linking...
gameProcess.obj : error LNK2001: unresolved external symbol "public: void __thiscall VisManager::processServer(void)" (?processServer@VisManager@@QAEXXZ)
gameProcess.obj : error LNK2001: unresolved external symbol "class VisManager * gServerVisManager" (?gServerVisManager@@3PAVVisManager@@A)
gameProcess.obj : error LNK2001: unresolved external symbol "public: void __thiscall VisManager::processClient(void)" (?processClient@VisManager@@QAEXXZ)
gameProcess.obj : error LNK2001: unresolved external symbol "class VisManager * gClientVisManager" (?gClientVisManager@@3PAVVisManager@@A)
terrRender.obj : error LNK2001: unresolved external symbol "public: static struct SelectionField __cdecl TerrainRender::TestSquareSelections(struct GridSquare *,int,class Point2I,struct SelectionField)" (?TestSquareSelections@TerrainRender@@SA?AUSel
ectionField@@PAUGridSquare@@HVPoint2I@@U2@@Z)
terrRender.obj : error LNK2001: unresolved external symbol "public: static unsigned int TerrainRender::mDynamicSelectionCount" (?mDynamicSelectionCount@TerrainRender@@2IA)
terrRender.obj : error LNK2001: unresolved external symbol "public: static struct TerrSelectionInfo * TerrainRender::mTerrainSelections" (?mTerrainSelections@TerrainRender@@2PAUTerrSelectionInfo@@A)
terrRender.obj : error LNK2001: unresolved external symbol "public: static void __cdecl TerrainRender::buildSelectionArray(void)" (?buildSelectionArray@TerrainRender@@SAXXZ)
../example/torqueDemo_DEBUG.exe : fatal error LNK1120: 8 unresolved externals
Error executing link.exe.

torqueDemo_DEBUG.exe - 9 error(s), 0 warning(s)

====================================================

I' ve read serveral posts and gone through serveral merges and whatnot to come to this point. It all started with a simple ljpeg.lib issue, then blew out to 156 errors, and now back down to 9. If some can help me solve this I'd greatly appreciate it.

David

#1
11/21/2005 (1:24 am)
Yeah seems to be the same with me, but i'm only having the one ljpeg.lib link error... my post is here:

Click Here
#2
11/21/2005 (3:29 am)
I'm just using V C++ with VC6 libs.

I should add. I have the RTS kit, the lighting pack, and the SDK. I can get them all to compile perfectly within their directories, but under the LightingPack-RTS directory I am getting the original 156 errors again. They are listed below.

Linking...
worldEditor.obj : error LNK2001: unresolved external symbol "public: static void __cdecl sgLightingFilter::sgRenderAllowedObjects(void *)" (?sgRenderAllowedObjects@sgLightingFilter@@SAXPAX@Z)
waterBlock.obj : error LNK2001: unresolved external symbol "protected: virtual void __thiscall SceneObject::uninstallLights(void)" (?uninstallLights@SceneObject@@MAEXXZ)
sceneObject.obj : error LNK2001: unresolved external symbol "protected: virtual void __thiscall SceneObject::uninstallLights(void)" (?uninstallLights@SceneObject@@MAEXXZ)
...............................


RTS_DEBUG.exe - 156 error(s), 0 warning(s)

I am using freshly downloaded copies of all my code, and used the TLK_RTS_Autopatch-1.3.5 to merge them, and followed that up with WinMerge

I've checked project settings, registry entries.

I hope someone out there can point me in the right direction.
#3
11/21/2005 (5:03 am)
Your project file(s) are not correctly building the entire project. For example, in the first post you made, it looks like not all of the /RTS directory was merged, and/or parts (RTSVisManager.cc specifically) did not get added to the project.

I'm not quite as familiar with the lighting pack code, but am reasonably confident the same problem exists, just with different files.
#4
11/21/2005 (8:11 pm)
I did manage to get the /RTS directory into the newly merged directory.

What other project files would you recommend I look at? I'm lost here.
#5
11/24/2005 (7:58 pm)
I found the solution, I did not have all the project files recommended from the TLK migration guide. I have managed to get them and now I am having 3 errors.

c:\documents and settings\david\desktop\synapsegaming\contentpacks\lightingpack-rts\engine\terrain\terrrender.cc(402) : error C2511: 'emitTerrChunk' : overloaded member function 'void (struct SquareStackNode *,float,unsigned int,bool,bool,bool)' not
found in 'TerrainRender'
c:\documents and settings\david\desktop\synapsegaming\contentpacks\lightingpack-rts\engine\terrain\terrrender.h(281) : see declaration of 'TerrainRender'
c:\documents and settings\david\desktop\synapsegaming\contentpacks\lightingpack-rts\engine\terrain\terrrender.cc(616) : error C2660: 'emitTerrChunk' : function does not take 6 parameters
c:\documents and settings\david\desktop\synapsegaming\contentpacks\lightingpack-rts\engine\terrain\terrrender.cc(639) : error C2660: 'emitTerrChunk' : function does not take 6 parameters
#6
11/24/2005 (8:45 pm)
Did you change terrData.cc? The selection circles are rendered using modifications to that code. If TLK touches the code, too, then there's a conflict. :)
#7
11/24/2005 (9:17 pm)
I didn't change any code in terrData.cc but I did copy the TLK version over to the LightingPack-RTS directorybased on the migration guide docs.

I will go over it again and leave terrData.cc as is in the LightingPack-RTS dir and see what happens.
#8
11/24/2005 (9:50 pm)
It didn't make any difference, the three errors still show up with or without the terrData.cc copied from TLK to LightingPack-RTS.