Game Development Community

Help! Extremely long build times

by Devin Passage · in Torque 3D Professional · 09/11/2010 (3:52 pm) · 6 replies

Hey folks, its the little annoyances that get to us over time. Just wondering if anybody had any hints for me here. But it takes about 45 seconds to build the debug of T3D. Wondering if there is any way to speed that up.

it spends about 18 seconds in:

1>LINK : ../../../game/EoHB2_DEBUG.dll not found or not built by the last incremental link; performing full link
1> Creating library ../../../game/EoHB2_DEBUG.lib and object ../../../game/EoHB2_DEBUG.exp


and then another 18 seconds or so in:

1>Embedding manifest...
1>Creating browse information file...

call me crazy, but is this maybe because its saying the DLL wasn't found and it needs to be "fully linked", is there a way to turn back on incremental linking? I build the game about 100 times a day so this ends up costing me about 3000 seconds or an hour a day just waiting for the game to build after code changes.

Thanks!!!!!

#1
09/11/2010 (5:19 pm)

This has been bothering me too and I've looked into it a little. Unfortunately, so far everything points in the direction of a bug in the VS linker that's being triggered by the T3D project setups. I've seen this issue come up many times on the interwebs but so far have never seen anyone post a real solution.

As for the warning, MS docs are saying

Quote:
The given file was either deleted or changed since the last incremental linking session. LINK attempted to correct the problem by running a full link to recreate the incremental status (.ILK) file.

However, the paths are correct, the files are there, and the modification times appear to be exactly what they should be. I see no reason whatsoever why link.exe resorts to a full link when rebuilding an unchanged project, so yeah, it all hints at an issue with link.exe.
#2
09/12/2010 (8:59 pm)
I think the problem is that how T3D is setup the game EXE and game DLL are named the same. This means you get some intermediate files that are named the same and i think it confuses the linker.

For beta 3 we fixed some remainin issues in the VS2010 project gen templates and it should work reliably. Part of that was working around a VS2010 bug by disabling browser/BSC file generation.
#3
09/14/2010 (7:48 am)
Changing the names did get rid of that warning message, seems faster now... have not actually tested the speed but its good enough for now, thank you!
#4
09/14/2010 (9:04 am)
Tested in T3D 1.0.1, added a _Lib to the Name of the .DLL made it faster quite a bit. Thanks a lot!
#5
09/14/2010 (3:20 pm)

Tom to the rescue. Great find.
#6
09/14/2010 (4:47 pm)
Heh? I just tested and it does speed up linking a lot, specially when only recompiling a one or two .cpp files. Now onto applying the changes directly to the project generator...