1 | initial version |
Basically, there are debug libraries for the reason of debugging. They contain tons of lines of code as overhead, with the sole purpose to do different asserts, output more information and make it possible to actually go through the code while debugging.
However, when people release software, they do not want this overhead, which slows down the program drastically, to be included. For that release libraries are provided, which do not contain this extra information.
Never build in debug mode with release libraries or vice versa. Basically it will always get you into trouble. Not for these simple functions like saving an image, but with more complex functionality it will always fail on you.
Just keep being concise and stick to one selection.