2013-08-13 15:31:03 +00:00
< HTML >
< HEAD >
< TITLE > Using SDL with Microsoft Visual C++< / TITLE >
< / HEAD >
< BODY >
< H1 >
Using SDL with Microsoft Visual C++
< / H1 >
< H3 >
by < A HREF = "mailto:snowlion@sprynet.com" > Lion Kimbro < / A > and additions by < A HREF = "mailto:james@conceptofzero.net" >
James Turk< / A >
< / H3 >
< p >
You can either use the precompiled libraries from < A HREF = "http://www.libsdl.org/download.php" > the SDL Download web site < / A > , or you can build SDL yourself.
< / p >
< H3 >
Building SDL
< / H3 >
< P >
Go into the VisualC directory and double-click on the Visual Studio solution for your version of Visual Studio, e.g. < CODE > SDL_VS2008.sln< / CODE > This should open up the IDE.
< / P >
< P >
There are different solution files for the various
2016-12-04 13:33:54 +00:00
versions of the IDE. Please use the appropriate version
2016-01-04 12:19:39 +00:00
2008, 2010, 2012 or 2013.
2013-08-13 15:31:03 +00:00
< / P >
< P >
Build the < CODE > .dll< / CODE > and < CODE > .lib< / CODE > files.
< / P >
< P >
This is done by right clicking on each project in turn (Projects are listed in
the Workspace panel in the FileView tab), and selecting "Build".
< / P >
< P >
You may get a few warnings, but you should not get any errors. You do have to
have at least the DirectX 9 SDK installed, however. The latest
version of DirectX can be downloaded from < A HREF = "http://www.microsoft.com" > Microsoft< / A > .
< / P >
< P >
Later, we will refer to the following .lib and .dll files that have just been
generated:
< / P >
< ul >
< li > SDL2.dll< / li >
< li > SDL2.lib< / li >
< li > SDL2main.lib< / li >
< / ul >
< P >
Search for these using the Windows Find (Windows-F) utility inside the VisualC directory.
< / P >
< H3 >
Creating a Project with SDL
< / H3 >
< P >
Create a project as a Win32 Application.
< / P >
< P >
Create a C++ file for your project.
< / P >
< P >
Set the C runtime to "Multi-threaded DLL" in the menu: < CODE > Project|Settings|C/C++
tab|Code Generation|Runtime Library < / CODE > .
< / P >
< P >
Add the SDL < CODE > include< / CODE > directory to your list of includes in the
menu: < CODE > Project|Settings|C/C++ tab|Preprocessor|Additional include directories < / CODE >
.
< br >
< STRONG > < FONT color = "#009900" > VC7 Specific: Instead of doing this I find it easier to
add the include and library directories to the list that VC7 keeps. Do this by
selecting Tools|Options|Projects|VC++ Directories and under the "Show
Directories For:" dropbox select "Include Files", and click the "New Directory
Icon" and add the [SDLROOT]\include directory (e.g. If you installed to
c:\SDL\ add c:\SDL\include). Proceed to change the
dropbox selection to "Library Files" and add [SDLROOT]\lib.< / FONT > < / STRONG >
< / P >
< P >
The "include directory" I am referring to is the < CODE > include< / CODE > folder
within the main SDL directory (the one that this HTML file located within).
< / P >
< P >
Now we're going to use the files that we had created earlier in the Build SDL
step.
< / P >
< P >
Copy the following files into your Project directory:
< / P >
< ul >
< li > SDL2.dll< / li >
< / ul >
< P >
Add the following files to your project (It is not necessary to copy them to
your project directory):
< / P >
< ul >
< li > SDL2.lib < / li >
< li > SDL2main.lib< / li >
< / ul >
< P >
(To add them to your project, right click on your project, and select "Add
files to project")
< / P >
< P > < STRONG > < FONT color = "#009900" > Instead of adding the files to your project it is more
2016-12-04 13:33:54 +00:00
desirable to add them to the linker options: Project|Properties|Linker|Command
2013-08-13 15:31:03 +00:00
Line and type the names of the libraries to link with in the "Additional
Options:" box. Note: This must be done for each build
configuration (e.g. Release,Debug).< / FONT > < / STRONG > < / P >
< H3 >
SDL 101, First Day of Class
< / H3 >
< P >
Now create the basic body of your project. The body of your program should take
2016-01-04 12:19:39 +00:00
the following form:
< PRE > < CODE >
2013-08-13 15:31:03 +00:00
#include "SDL.h"
int main( int argc, char* argv[] )
{
// Body of the program goes here.
return 0;
}
2016-01-04 12:19:39 +00:00
< / CODE > < / PRE >
2013-08-13 15:31:03 +00:00
< P > < / P >
< H3 >
That's it!
< / H3 >
< P >
I hope that this document has helped you get through the most difficult part of
using the SDL: installing it. Suggestions for improvements to this document
should be sent to the writers of this document.
< / P >
< P >
Thanks to Paulus Esterhazy (pesterhazy@gmx.net), for the work on VC++ port.
< / P >
< P >
This document was originally called "VisualC.txt", and was written by < A HREF = "mailto:slouken@libsdl.org" >
Sam Lantinga< / A > .
< / P >
< P >
Later, it was converted to HTML and expanded into the document that you see
today by < A HREF = "mailto:snowlion@sprynet.com" > Lion Kimbro< / A > .
< / P >
< P > Minor Fixes and Visual C++ 7 Information (In Green) was added by < A HREF = "mailto:james@conceptofzero.net" > James Turk< / A >
< / P >
< / BODY >
< / HTML >