Compiler choices: Difference between revisions
Jump to navigation
Jump to search
TomEdwards (talk | contribs) mNo edit summary |
TomEdwards (talk | contribs) (some clever person has got 2008 to compile debug, time for an update!) |
||
Line 1: | Line 1: | ||
[[Image:Vsexpress logo.png|right|Visual Studio Express logo]] | [[Image:Vsexpress logo.png|right|Visual Studio Express logo]] | ||
[[Image:Gccegg-65.png|right|GCC logo]] | |||
You have several choices for compiling the Source SDK: | |||
''' | #'''[http://msdn.microsoft.com/howtobuy/visualc/default.aspx Visual Studio 2005]''' / '''[http://www.microsoft.com/express/2005/download/default.aspx Visual C++ Express 2005]''' — which are compatible 'out of the box'. | ||
#'''[http://msdn.microsoft.com/vs2008/products/ Visual Studio 2008]''' / '''[http://www.microsoft.com/express/vc/ Visual C++ Express 2008]''' — which can be used [[Compiling under VS2008|after a bit of work]]. | |||
#'''[http://gcc.gnu.org/ GCC]''' — which is used to compile [[Wikipedia:Linux|Linux]] [[Dedicated server|Dedicated Server]]s. | |||
If you own a copy of Visual Studio 2005/2008 you'll probably want to use that, and if you're compiling for Linux you don't have a choice to make. Which leaves only the Visual C++ Express versions to choose between: | |||
;[http://www.microsoft.com/express/2005/download/default.aspx VCE2005] | |||
:Officially supported by Valve | |||
:More established technology | |||
:"Just works" | |||
;[http://www.microsoft.com/express/vc/ VCE2008] | |||
:More recent - fewer bugs | |||
:Nicer user interface | |||
:Better support from Microsoft | |||
Both are perfectly acceptable choices, providing for free all of the functionality needed to program and compile a mod. If you are unsure, choose 2005. | |||
== Additional SDKs == | == Additional SDKs == | ||
Line 11: | Line 25: | ||
*VCE2005 users need to download the [http://www.microsoft.com/downloads/details.aspx?FamilyID=e6e1c3df-a74f-4207-8586-711ebe331cdc&DisplayLang=en Windows SDK] (Windows 2000 users: [http://www.microsoft.com/downloads/details.aspx?familyid=A55B6B43-E24F-4EA3-A93E-40C0EC4F68E5&displaylang=en Platform SDK]). Visual Studio and VCE2008 users do not. | *VCE2005 users need to download the [http://www.microsoft.com/downloads/details.aspx?FamilyID=e6e1c3df-a74f-4207-8586-711ebe331cdc&DisplayLang=en Windows SDK] (Windows 2000 users: [http://www.microsoft.com/downloads/details.aspx?familyid=A55B6B43-E24F-4EA3-A93E-40C0EC4F68E5&displaylang=en Platform SDK]). Visual Studio and VCE2008 users do not. | ||
*If you want to create new [[shader]]s, the [http://msdn2.microsoft.com/directx/aa937788.aspx DirectX SDK] is required. | *If you want to create new [[shader]]s, the [http://msdn2.microsoft.com/directx/aa937788.aspx DirectX SDK] is required. | ||
== See also == | |||
* [[Compiling under VS2005]] | |||
* [[Compiling under VS2008]] | |||
* [[Compiling under Linux]] | |||
[[Category:Source_SDK_FAQ]] | [[Category:Source_SDK_FAQ]] | ||
[[Category:Programming]] | [[Category:Programming]] |
Revision as of 10:33, 12 June 2008
You have several choices for compiling the Source SDK:
- Visual Studio 2005 / Visual C++ Express 2005 — which are compatible 'out of the box'.
- Visual Studio 2008 / Visual C++ Express 2008 — which can be used after a bit of work.
- GCC — which is used to compile Linux Dedicated Servers.
If you own a copy of Visual Studio 2005/2008 you'll probably want to use that, and if you're compiling for Linux you don't have a choice to make. Which leaves only the Visual C++ Express versions to choose between:
- VCE2005
- Officially supported by Valve
- More established technology
- "Just works"
- VCE2008
- More recent - fewer bugs
- Nicer user interface
- Better support from Microsoft
Both are perfectly acceptable choices, providing for free all of the functionality needed to program and compile a mod. If you are unsure, choose 2005.
Additional SDKs
- VCE2005 users need to download the Windows SDK (Windows 2000 users: Platform SDK). Visual Studio and VCE2008 users do not.
- If you want to create new shaders, the DirectX SDK is required.