Compiling Doom 3 SDK 1.3.1 with Visual C++ 2010 Express

Started by VGames, June 22, 2015, 09:53:39 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

VGames

Could somebody please point me in the right direction? It's been so long since I've messed around with this sucker. I can't for the life of me remember how to set it up properly for compiling a dll for Doom 3.
Get the latest on Perfected Doom 3 here - http://www.moddb.com/mods/perfected-doom-3-version-500

motorsep

Quote from: VGames on June 22, 2015, 09:53:39 PM
Could somebody please point me in the right direction? It's been so long since I've messed around with this sucker. I can't for the life of me remember how to set it up properly for compiling a dll for Doom 3.

Stock Doom 3 GPL release is crap. Try dhewm3. Also, MSVC 2013 Community Edition is free.

aphexjh

Hi VGames,

This tutorial worked for me.

http://www.moddb.com/company/apgsoftware/tutorials/how-to-compile-doom-3-with-visual-studio-2010

agree with motorstep about using community if you can, but should be fine without as well. Hope this helps. The advantage to using a more complete form of vs is that it will include all the libraries out of the box, instead of having to d/l and link them yourself.


VGames

if I use dhewm3 would I be able to just copy all of my sdk files that I've made changes too into the game folder like I do now? Or would I have to cut and paste each piece of code that was added or altered one at a time?

I've tried using that tut but some of it is unclear. The part where it says to put the directories of the place u installed dxsdk kind of left me unsure of how it's supposed to be added. Am I supposed to overwrite everything in that little window or what?
Get the latest on Perfected Doom 3 here - http://www.moddb.com/mods/perfected-doom-3-version-500

motorsep

Wait a sec. So if you can't compile the engine, and you made C++ modifications, how on Earth do you know if they work or not?! Usually one would try building engine first, and once engine builds flawlessly, one begins modifying the code. Not other way around.

VGames

I'm that good.  8)

No it was just a small change recommended by somebody. Nothing game breaking. I'll look into it later when I get home. Thanks for the help.
Get the latest on Perfected Doom 3 here - http://www.moddb.com/mods/perfected-doom-3-version-500

motorsep

You can't copy over files into dhewm3 since they changed a few things around  (unrolled precompiled headers and that forced them to change a few includes and things). And since you say changes are minimal, you can just copy/paste your changes into dhewm3.

VGames

No no the changes I just made were minimal. My source is based off of the sikkmod source. My friend doomtrinity added more things having to do with secondary fire modes, dual weapon wielding, and so on. Plus many changes to the sikkmod code aswell. This isnt the first time I've built this source. It's just been so long since I did anything with it. I'm having trouble getting it going again. But I think I've figured it out. I just have to get home to try it out. Have u ever played my mod Perfected Doom 3?
Get the latest on Perfected Doom 3 here - http://www.moddb.com/mods/perfected-doom-3-version-500

VGames

Ok I've got it to start compiling but I'm getting errors that should not be there. This source use to compile with no issues at all. Here's the errors:



1>------ Skipped Build: Project: Game-d3xp, Configuration: Release Win32 ------
1>Project not selected to build for this solution configuration
2>------ Skipped Build: Project: MayaImport, Configuration: Release Win32 ------
2>Project not selected to build for this solution configuration
3>------ Build started: Project: Game, Configuration: Release Win32 ------
3>Compiling...
3>Player.cpp
3>Linking...
3>   Creating library ./ReleaseDLL/gamex86.lib and object ./ReleaseDLL/gamex86.exp
3>Player.obj : error LNK2019: unresolved external symbol "public: void __thiscall idGrabEntity::Update(class idPlayer *)" (?Update@idGrabEntity@@QAEXPAVidPlayer@@@Z) referenced in function "private: void __thiscall idPlayer::UpdateWeapon(void)" (?UpdateWeapon@idPlayer@@AAEXXZ)
3>Player.obj : error LNK2019: unresolved external symbol "public: void __thiscall idGrabEntity::Clear(void)" (?Clear@idGrabEntity@@QAEXXZ) referenced in function "public: void __thiscall idPlayer::Restore(class idRestoreGame *)" (?Restore@idPlayer@@QAEXPAVidRestoreGame@@@Z)
3>Player.obj : error LNK2019: unresolved external symbol "public: void __thiscall idGrabEntity::StartDrag(class idPlayer *,class idEntity *,int)" (?StartDrag@idGrabEntity@@QAEXPAVidPlayer@@PAVidEntity@@H@Z) referenced in function "public: void __thiscall idPlayer::PerformImpulse(int)" (?PerformImpulse@idPlayer@@QAEXH@Z)
3>Player.obj : error LNK2019: unresolved external symbol "public: void __thiscall idGrabEntity::StopDrag(class idPlayer *,bool)" (?StopDrag@idGrabEntity@@QAEXPAVidPlayer@@_N@Z) referenced in function "public: void __thiscall idPlayer::PerformImpulse(int)" (?PerformImpulse@idPlayer@@QAEXH@Z)
3>Player.obj : error LNK2019: unresolved external symbol "public: virtual __thiscall idGrabEntity::~idGrabEntity(void)" (??1idGrabEntity@@UAE@XZ) referenced in function __unwindfunclet$??0idPlayer@@QAE@XZ$0
3>Player.obj : error LNK2019: unresolved external symbol "public: __thiscall idGrabEntity::idGrabEntity(void)" (??0idGrabEntity@@QAE@XZ) referenced in function "public: __thiscall idPlayer::idPlayer(void)" (??0idPlayer@@QAE@XZ)
3>./ReleaseDLL/gamex86.dll : fatal error LNK1120: 6 unresolved externals
3>Build log was saved at "file://c:\Doom3_SDK\src\Game\ReleaseDLL\BuildLog.htm"
3>Game - 7 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 1 up-to-date, 2 skipped ==========



If anybody is familiar with the Sikkmod source please help.
Get the latest on Perfected Doom 3 here - http://www.moddb.com/mods/perfected-doom-3-version-500

VGames

Figured it out. I needed to add some extra CPP and H files added to the source by Sikkpin. It's all good.
Get the latest on Perfected Doom 3 here - http://www.moddb.com/mods/perfected-doom-3-version-500