Lazy Foo' Productions

Setting up SDL Extension Libraries on Windows

Last Updated 8/12/22
An important note for Microsoft Windows developers:

As part of your set up process, you are going to have to place the dll files some place where your program can link with it during runtime. You can either put the dll file in the same directory as your executable, or put it in the system directory. C:\WINDOWS\SYSTEM32 is the 32bit windows system directory and C:\Windows\SysWOW64 is the 64bit system directory of 32bit applications.

The advantages of placing the dll file in the system directory are:
  1. Your operating system will always be able to find the library on your system, so you can compile and run dynamically linked applications anywhere on your system
  2. You won't have to place a copy of the dll file with every single application you develop
With that in mind, when distributing your application you should never mess with the user's system directory. The user could have applications that require SDL version ABC in the system directory and you could be overwriting it with SDL version XYZ. Your distribution version should have the dll files in the same directory as the executable.

Also, if you are getting Procedure Entry Point could not be located in the dynamic link library errors, it could mean that that you have conflicting versions of the dll. Go into the windows command line, and use the "where" command by typing where *name of dll file*. The first file is the first dll windows finds and the one it uses when a program that needs that dll. You can then replace the old version with the new one SDL_image uses.
Select Your IDE/Compiler