Note:
This thread is somewhat out-of-date.
You can find assistance here:
How to Install the SDK (modiki link)
-or-
Refar's Makefile/Instructions BTS 3.17 SDK / Debugging
If you have Visual Studio 2003 (Visual C++ 7) you should be able to load the SDK up directly. If not (and you would like a free option) you can use the following process to get codeblocks to allow you to modify and compile the SDK.
A huge thanks to DaveMcW for developing this process. I spent a very sad weekend staring at the SDK without any ability to do anything with it until he provided this writeup.
You can download the SDK from: http://www.2kgames.com/civ4/downloads.htm
Before you start this make sure to turn off the Read Only flag on all of the files in the SDK.
For some examples of things that can be done easily with the SDK check out: http://forums.civfanatics.com/showthread.php?t=166934
And for a bit more indepth example for you programmer types check out: http://forums.civfanatics.com/showthread.php?t=166935
Here is an update from sgerner on some updates that are required for the BtS SDK:
- Kael
This thread is somewhat out-of-date.
You can find assistance here:
How to Install the SDK (modiki link)
-or-
Refar's Makefile/Instructions BTS 3.17 SDK / Debugging
If you have Visual Studio 2003 (Visual C++ 7) you should be able to load the SDK up directly. If not (and you would like a free option) you can use the following process to get codeblocks to allow you to modify and compile the SDK.
A huge thanks to DaveMcW for developing this process. I spent a very sad weekend staring at the SDK without any ability to do anything with it until he provided this writeup.
You can download the SDK from: http://www.2kgames.com/civ4/downloads.htm
Before you start this make sure to turn off the Read Only flag on all of the files in the SDK.
DaveMcW said:Here is a free method of building the DLL. (Thanks to Ogre Wiki for many of the details.)
I had trouble getting some of the debug options to compile, so I turned them off.
1: Download the VC++ Toolkit 2003 and install it.
2: Grab the 3 multithreaded library files and put them in C:\Program Files\Microsoft Visual C++ Toolkit 2003\lib.
msvcrt.lib and msvcrtd.lib and msvcprt.lib (Read Ogre Wiki to see where this comes from).
3: Download the Platform SDK. You can also use internet explorer to install it automatically (recommended).
4: Download the latest CodeBlocks "without compiler" and install it.
5: The first time you install CodeBlocks, you will be shown a list of compilers. Select Microsoft Visual C++ Toolkit, and click Set As Default. Press OK.
6: Go to Settings->Compiler in the CodeBlocks menu. Click the "Directories" tab and add the the following directories to the compiler tab (changing to account for where you installed the packages):
Code:C:\Program Files\Microsoft Visual C++ Toolkit 2003\Include C:\Program Files\Microsoft Platform SDK\Include
![]()
In the Directories/Linker tab add the following directories:
Code:C:\Program Files\Microsoft Visual C++ Toolkit 2003\Lib C:\Program Files\Microsoft Platform SDK\Lib
![]()
7: Open \CvGameCoreDLL\CvGameCoreDLL.vcproj in CodeBlocks.
8: Go to Project->Build options->Final Release.
On the "Compiler Flags" tab, uncheck "Produce debugging symbols [/Zi]".
![]()
On the "Other options" tab, change EHsc to /EHsc
![]()
On the "Linker" tab, add a new link library called user32
Also on the Linker tab, delete the linker option "/pdb:Final Release\CvGameCoreDLL.pdb" and press OK.
![]()
9: Change the "Build target" drop-down to Final Release.
10: File->Save project. This creates a CodeBlocks project (.cbp) that you can open in the future.
11: Build->Build. When the compiler finishes, you will have \..\Assets\CvGameCoreDLL.dll !
For some examples of things that can be done easily with the SDK check out: http://forums.civfanatics.com/showthread.php?t=166934
And for a bit more indepth example for you programmer types check out: http://forums.civfanatics.com/showthread.php?t=166935
Here is an update from sgerner on some updates that are required for the BtS SDK:
Gedrin, by default the BTS project has the /Zi (Produce debugging symbols) option enabled. You want to turn that off to get past the compiler limit error:
- under: Project --> Build options...
- in the tab for: Final Release Win 32 --> Compiler Settings --> Other Options
- remove: /Zi
Other deviations from the tutorial that I had to make to get everything to build properly include the following:
1) remove CvGameCoreDLL.rc from the project (you must have already done this though to get this far):
- in the Projects workspace tab go to the directory (Resources) and right click on the CvGameCoreDLL.rc file. Select "Remove from project"
2) remove CvGameCoreLL_DEBUG.pdb from linker:
- under: Projects --> Build options...
- in the tab for: Final Release Win 32 --> Linker Settings --> Other Linker Options
- remove: /pdb:Final Debug Win32\CvGameCoreDLL_DEBUG.pdb
- Kael