Building TSE problems with TBE and VC6
by Vincent BILLET · in Torque Game Engine Advanced · 08/18/2005 (6:47 am) · 9 replies
I've just downloaded TSE from HEAD, and naturally I tried to build it.
For Building Torque Shader Engine I wanted to use Torque Build Environment. So I modified makefiles following www.garagegames.com/mg/forums/result.thread.php?qt=26448 and it doesn't work... Why?
I tried to reinstall My old VC6... And the result is Waoohhh... not better... :( Why ?
My last Try with VC give me :
d3dx9.lib(jcdctmgr.obj) : error LNK2001: unresolved external symbol ___security_cookie
d3dx9.lib(trees.obj) : error LNK2001: unresolved external symbol ___security_cookie
d3dx9.lib(cshaderprogram.obj) : error LNK2001: unresolved external symbol ___security_cookie
d3dx9.lib(jdcoefct.obj) : error LNK2001: unresolved external symbol ___security_cookie
d3dx9.lib(jdhuff.obj) : error LNK2001: unresolved external symbol ___security_cookie
d3dx9.lib(jchuff.obj) : error LNK2001: unresolved external symbol ___security_cookie
d3dx9.lib(cvsprogram.obj) : error LNK2001: unresolved external symbol ___security_cookie
etc...
EDIT : I copied lib files from october extras in DXSDK\lib and this does not fix the prob
For Building Torque Shader Engine I wanted to use Torque Build Environment. So I modified makefiles following www.garagegames.com/mg/forums/result.thread.php?qt=26448 and it doesn't work... Why?
I tried to reinstall My old VC6... And the result is Waoohhh... not better... :( Why ?
My last Try with VC give me :
d3dx9.lib(jcdctmgr.obj) : error LNK2001: unresolved external symbol ___security_cookie
d3dx9.lib(trees.obj) : error LNK2001: unresolved external symbol ___security_cookie
d3dx9.lib(cshaderprogram.obj) : error LNK2001: unresolved external symbol ___security_cookie
d3dx9.lib(jdcoefct.obj) : error LNK2001: unresolved external symbol ___security_cookie
d3dx9.lib(jdhuff.obj) : error LNK2001: unresolved external symbol ___security_cookie
d3dx9.lib(jchuff.obj) : error LNK2001: unresolved external symbol ___security_cookie
d3dx9.lib(cvsprogram.obj) : error LNK2001: unresolved external symbol ___security_cookie
etc...
EDIT : I copied lib files from october extras in DXSDK\lib and this does not fix the prob
#2
08/18/2005 (12:30 pm)
Or use the earlier DirectX SDK releases like everyone else does, I believe.
#3
While this works currently, it's not a good idea: as of milestone 2, TSE-EA no longer supports VC6/earlier DirectX SDK releases, and you cannot count on this solution working in the long term.
08/18/2005 (12:32 pm)
Quote:Or use the earlier DirectX SDK releases like everyone else does, I believe.
While this works currently, it's not a good idea: as of milestone 2, TSE-EA no longer supports VC6/earlier DirectX SDK releases, and you cannot count on this solution working in the long term.
#4
For 2005 : I have a strange prob : "windows.h" : file not found !!!!!
Any Ideas?
08/18/2005 (12:42 pm)
And I downloaded October release of SDK and the extras... Unfortunately it does not work...For 2005 : I have a strange prob : "windows.h" : file not found !!!!!
Any Ideas?
#5
FYI, TBE was not ever intended as a build solution for TSE, so this isn't an area we really recommend you go.
08/18/2005 (1:08 pm)
The other thing to keep in mind is that the targets.torque.mk list is not kept up to speed for TSE, but is required to be accurate for the TBE build process. You are going to need to go through and make sure that every file included in the VC project file is accurately represented in the TBE build process.FYI, TBE was not ever intended as a build solution for TSE, so this isn't an area we really recommend you go.
#6
even then you need to tweak stuff in your IDE to get it to work (like adding the Paths by hand and such)
we already had this case before
www.garagegames.com/mg/forums/result.thread.php?qt=31271
in the end he bought Visual C++ .NET 2003
i think it should be possible to
08/19/2005 (12:46 am)
You use Visual C++ 2005 Express Edition, right? Then you need the Platform SDK. Its not included as it is a huge download (about 400MB)even then you need to tweak stuff in your IDE to get it to work (like adding the Paths by hand and such)
we already had this case before
www.garagegames.com/mg/forums/result.thread.php?qt=31271
in the end he bought Visual C++ .NET 2003
i think it should be possible to
#7
/NODEFAULTLIB:"LIBCMTD" /NODEFAULTLIB:"LIBCMT" oleaut32.lib ole32.lib d3d9.lib dxerr9.lib d3dx9.lib
And TSE Get compiled and builded !
Thanks to every people who help me to find this solution.
(I will Try later a less dirty solution :) )
08/19/2005 (1:41 am)
I Downloaded C++ Express Edition 2005 effectively. Then I Downloaded Platform SDK. I copied .h and .lib files from platform SDK To C++ Express Edition 2005 folders (I know It's very dirty ;) ) . Finaly I had to adjusted project Properties -> Linker -> Command Line as follow : /NODEFAULTLIB:"LIBCMTD" /NODEFAULTLIB:"LIBCMT" oleaut32.lib ole32.lib d3d9.lib dxerr9.lib d3dx9.lib
And TSE Get compiled and builded !
Thanks to every people who help me to find this solution.
(I will Try later a less dirty solution :) )
#8
you need to edit the Platform SDK "setenv.cmd" so that i also includes the paths to DX libs and headers
set your build environment by calling setenv.cmd and then start visual studio from the command prompt with /USEENV (for some reason Visual Studio just overrides the paths with its own paths if you dont do that).
i think the correct command is "msdev.exe /USEENV"
i know that it works with Visual Studio 2003 as i compiled for x64 targets with that
in most cases you will find notes about doing this with x64 targets but you can specify an 32 Bit target machine also.
btw. you cant compile TSE to 64 Bit yet because of the assambler code and maybe some issue with changed or deprecated functions.
08/19/2005 (3:14 am)
As for a cleaner solution you could try this:you need to edit the Platform SDK "setenv.cmd" so that i also includes the paths to DX libs and headers
set your build environment by calling setenv.cmd and then start visual studio from the command prompt with /USEENV (for some reason Visual Studio just overrides the paths with its own paths if you dont do that).
i think the correct command is "msdev.exe /USEENV"
i know that it works with Visual Studio 2003 as i compiled for x64 targets with that
in most cases you will find notes about doing this with x64 targets but you can specify an 32 Bit target machine also.
btw. you cant compile TSE to 64 Bit yet because of the assambler code and maybe some issue with changed or deprecated functions.
#9
08/19/2005 (7:03 am)
Thanks Florian, I Will Try It later.
Associate Kyle Carter