Do I have to set up SDL 2.0.3 every time I make a new project?
I tried putting
system32 so that I don't have to include it in my project folders, but that didn't work.
I'm not quite sure what you mean by "setting up SDL". You have to
In Visual Studio, there are so called property sheets that let to share properties between projects. You could create one that contains SDL as linker input but I highly doubt that applying the property sheet is faster than just linking to the library.
To use SDL (or any other similarly-packaged dependency), you have to:
The first three steps can be set in the project properties of your project, in the C++ and linker tabs respectively. You can set these ones and use property sheets to save the settings, importing them into a new project. Alternatively you can just set up a basic skeleton project, install it as a Visual Studio template or just create a clone every time you want to start a new project.
Don't try to put your dependencies in system directories like
If you don't want to keep the copies of your dependencies directly in the folder structure of your project (which is what I'd recommend, since it makes each project an isolated silo that can be configured to build immediately upon checking out from version control with no additional setup), you can create a "ThirdParty" directory to store all your dependencies.
Somewhere in a userspace portion of your hard drive (like in your "My Documents" folder), create a "ThirdParty" directory that has one directory for each dependency (like "SDL" or "GLEW" or "Bullet" and so on). In each of those directories, make a subdirectory for each major version (1.0, 2.0, et cetera) and drop the appropriate dependency, directly as distributed from the vendor, in there.
There are 2 things you can do:
Then you've to put the sdl-lib files into the standart folder for Libs. then you can link the using
For the Dll I'd create a directory called Libs and add this Directory to the path variable. That's the dirty way.
-In other, commercial version of VS you can create Projects and save them as templates. The only thing you've to do after is to place the dll as state above.