Compiler choices
You have several choices for compiling unedited variants of the Source SDK depending on which version you are using.
Visual Studio

Please see

Visual Studio is an Integrated development environment (IDE) developed and maintained by Microsoft. It is the default IDE recommended for use with the Source SDK on Windows. In
Source 2013, the default version of Visual Studio used for Source engine development isVisual Studio 2013 (Visual Studio 2022 for
Team Fortress 2 branch). Older versions of Visual Studio are not compatible with Source 2013, and newer versions of Visual Studio will not work with Source 2013 by default.
Please seeInstalling Visual Studio 2013 (for) orInstalling Visual Studio 2022 (for
) for more information on how to install Visual Studio, as well as how newer versions of Visual Studio can be used.
Availability
Different versions of Visual Studio are supported between different versions of the Source SDK.
Version | Engine branch | Requirements |
---|---|---|
Visual Studio 2002 | ![]() | SeeCompiling under VS2002. |
Visual Studio 2003 | SeeCompiling under VS2003. | |
Visual Studio 2005 | ![]() ![]() | SeeCompiling under VS2005. |
Visual Studio 2008 | SeeCompiling under VS2008. | |
Visual Studio 2010 | ![]() ![]() ![]() ![]() | ![]() ![]() Source 2013: Add /2010 to your VPC command line |
Visual Studio 2012 | ![]() ![]() Source 2013: Supported | |
Visual Studio 2013 | ![]() ![]() | Default for Singleplayer only, aswell as pre-2025 Multiplayer. |
Visual Studio 2015 | SeeCompiling under VS2022. | |
Visual Studio 2017 | ||
Visual Studio 2019 | ||
Visual Studio 2022 | ![]() ![]() | Team Fortress 2 branch:Default. SeeSetting up Source SDK Base 2013 Multiplayer. Source 2013 Singleplayer: SeeCompiling under VS2022. |
GCC

Please see

TheGNU Compiler Collection (GCC) is a collection of code compilers maintained by the GNU Project.G++ in particular is the default compiler recommended for use with the Source SDK on Linux.
Availability



Version | Engine branch | Requirements |
---|---|---|
GCC 4.2.x or lower | ![]() | SeeCompiling under Linux. |
GCC 4.6-4.8 | ![]() ![]() | SeeSource SDK 2013 on Linux ("container" method). |
GCC 5 or higher | SeeSource SDK 2013 on Linux ("container" method) and optional step for changing the toolchain. |
See also
- Building without Visual Studio
Visual Studio Code — A rich text editor commonly used with scripts outside of the code.