Game Development Community

Help Compiling

by Bobby Leighton · in Torque 3D Professional · 05/02/2010 (3:03 pm) · 16 replies

This is the first time compiling on a 64bit system, is there anything about it I should know that I might be doing wrong? I don't have any problem with TGEA, and TGE, but with T3D it give me errors such as not fining dinput.h, and thing like itt cant find these header files, and Im other strange ones too, would you like me to post these errors, or is my problem more obvious? like linking the wrong lib's(x64 instead of x86?), i did lots of searching and could find nothing on setting up with T3d specifically.

#1
05/02/2010 (3:55 pm)
I think you should still use the x86 libs - while Torque 3D does compile under a 64 bit Windows, it it still compiled as a 32 bit application. Making it a 64 bit app would unfortunately require significant changes in the source.
#2
05/02/2010 (5:50 pm)
OK that is what I thought, but for some reason it is acting like I don't have the DirectX SDK installed, but I know I do. All the document I can fins that show how to setup .lib, and include linkage is for past versions so I don't think I am putting includes and library files in the right spot in the compiler. Do you use VS2008? Could you point me to how you make your builds

AMD Quad
Win 7 (64BIT)
VS2008 Pro, and Express
DirectX SDK(Aug) Latesst
Platform SDK that MS recomended for Win7

I really have to get this compiled so I can make source changes for Camera and such. i have just alittle over 6 weeks to make a game for my senoir project and I really dont want to have to stick to scripting things in. Thanks for you help by the way:O)
Bobby
PS here is an error, I break right after that...

j:\torque 3d 2009 pro 1.1 beta 1\engine\source\platformwin32\windinputdevice.h(20) : fatal error C1083: Cannot open include file: 'dinput.h': No such file or directory
#3
05/03/2010 (12:40 am)
I'll be sure to give you more info ASAP. Right now I'm moving my dev environment - I should be able to use my rig in about 8 hours.

Edit: Yes, I use VS2008
#4
05/03/2010 (12:04 pm)
Awesome! Thanks in advance. And as soon as I have some time this semester I will take what ever information you can provide and write a tutorial, and add it to the resource section, for others with this trouble.
#5
05/03/2010 (12:19 pm)
Hey again, here's a list of out-of-the-ordinary things I have set (Tools / Options / Projects and Solutions / VC++ Directories):

Library directories:
...Program Files (x86)/Microsoft DirectX SDK (March 2009)/Lib/x86;
...Program Files/Microsoft SDKs/Windows/v6.0A/Lib;
<Engine Dir>engine/lib/MSPlatformSDK/Lib;

Include directories:
...Program Files (x86)/Microsoft DirectX SDK (March 2009)/Include
...Program Files/Microsoft SDKs/Windows/v6.0A/Include;
<Engine Dir>engine/lib/MSPlatformSDK/Include;
...Program Files (x86)/Microsoft DirectX SDK (November 2008)/Include;

Source Directories:
..Program Files (x86)/Microsoft DirectX SDK (November 2008)/Include;

Seeing this, it's a miracle that things work for me.. I should really clean things up... Maybe this material is not the best for a tutorial - was hoping to give you info on a setup that works (granted, this is Vista x64). But after gathering this info - I wonder why I didn't get rid of old DirectX SDK entries.

I'm not sure how much this will help, but if it does then it was already worth it. Good luck!

Edit: Backslashes are eaten by the forum, so I've used slashes in paths.

Edit 2: Sorry, missed the March 2009 DirectX include.
#6
05/03/2010 (5:34 pm)
There is part of my problem:

...Program Files/Microsoft SDKs/Windows/v6.0A/Lib;

Doesn't exist on my PC, there is the 6.0 folder but in it isnt the Lib folder, just a Bin folder and Bootstrapper folder.

And thanks a lot, I think I know what a bit of my problem is. SO I think what I will do is, seeing how it is setup related I will just reinstall the SDK's on their own drive together. Thanks again for your help I'm sure this will help when I get a minute from modeling.
#7
05/03/2010 (6:01 pm)
As I vaguely remember you don't need the M$ SDK for VS2008, just VS2005. apologies if this wrong
#8
05/03/2010 (9:13 pm)
I really think you are right, and I have compiled T3D before, lots of times....i don't know what Im doing wrong....It can be the newest DirectX SDK right, it doesn't HAVE to be the March 09 right? I never have had such trouble.....I know Ill get it. I making a Stargate Parody for my senior project...got the gate and transport system working, now just getting the rest goin:O), ill let you guys know how it goes.
#9
05/04/2010 (4:45 am)
You need the MS SDK for VS2008 as well just fyi.

Also you also need to add the SDK for each project.

screenr.com/yWH <--- vid that I use to set it up

the pertiant part starts at 1:15 and goes to 2:10

#10
05/04/2010 (5:26 am)
@Bobby
I think that it DOES have to be March09 DxSDK

[edit]
Also what I was previously thinking about (from TGEA docs)
Quote:
Depending on which Visual C++ (VC) Express compiler you install, which is used for compiling the engine code, you might need to download and install the Windows SDK. This is only a requirement for developers using VC2005 Express. VC2008 Express includes its own version of the Windows SDK, thus negating the need to download and install a separate kit.

I do actually have the SDK on drive but not linked in VS2008(express).

[edit part deux]
What I actually have linked is the same as the TGEA docs
VS2008(express)->Tools->Options

Executable files->
C:\Program Files\Microsoft DirectX SDK (March 2009)\Utilities\bin\x86

Include Files->
C:\Program Files\Microsoft DirectX SDK (March 2009)\Include

Library Files->
C:\Program Files\Microsoft DirectX SDK (March 2009)\Lib\x86

That's all, compiles fine. In fact the only issues I have is when I try to run in DxDebug Mode and T3D says it can't find a Dx9 device (have a feeling I've had that since TGE/A ... ?), though I also think I saw something in the forums that involved hacing dx9 code to fix that ... can't quite remember ... brain gets too full with incoming info ...

I have since added the steps in that video, but haven't noticed any difference.
#11
05/04/2010 (9:49 am)
I didn't have the MS SDK, and from what I can tell, Visual Studio Pro doesn't need it. Things are likely to be different for the Express edition, though, as it comes with just the bare essentials to get an IDE running.

I've got the same Include and Library settings as Steve, but haven't done anything to the Executable list. T3D links just fine anyway. I guess the executables are just texture tools, debuggers and diagnostics for graphics? You already have the preprocessor, compiler and linker included with VS.

I've also updated to the latest DX SDK, without any issues in the build. We'll see how much it messes up while running :)
#12
05/04/2010 (10:35 am)
Quote:You need the MS SDK for VS2008 as well just fyi.
Nope, not true.
#13
05/04/2010 (10:51 am)
Yeah I had the wrong version...I have VS2008 Pro, I'm going to keep trying, I uninstalled the newest SDK that I did have installed and installed the March2009 one. other than that I was pretty sure I have them in the right spot, but I must not if the compiler can find them.

Edit:

Got it to Build(Yay!, and thank you all!), but only on Express, it wont build on Pro, even though they are set up exactly the same!?! Strange, and the dll built too on express, so perhaps I'm having some sort of conflict with them both being installed? Either way I can get back to work. Thank you all you help has be invaluable.
#14
05/04/2010 (11:51 am)
Quote:Quote:You need the MS SDK for VS2008 as well just fyi.
Nope, not true.

XP Pro SP3

VS 2008 Pro Ed v9.0.30729.1 SP

MS.Net Framework v3.5 SP1

I can create a new project and it throws the same "dinput.h" type errors until I add it. I'd quite like it to just work with out having to do that everytime.
#15
05/04/2010 (1:08 pm)
Just installing the DirectX SDK doesn't always setup the correct paths for VC. Go into tools->options->"Projects and Solutions"->VC++ Directories, select "Include files" then add the DX SDK include folder there and then "Library files" and add the DX SDK x86 lib folder there.
#16
05/04/2010 (1:28 pm)
Had to check.... the web setup installation of VS automatically downloads the libraries and headers that are needed from MS-SDK (without needing the MS-SDK package itself).