How to make sure you compile the static library and the UE4 project with same compilers?

How do I make sure I’m compiling both the static library and my project with same compilers? It looks like I’m getting errors from using different compilers. Example error:


error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '2' doesn't match value '0' in PCH.<project name>.h.obj

The VS solution for the UE4 project got configurations like “Development Editor”, “Shipping” and the static library project got “Debug” and “Release”.

I tried compiling the static library with “Debug” and “Release”, and tried using both. Both gives similar “mismatch detected” errors.

What’s the logic behind? Should I match this configurations?

ps: I’m just supposing this is why I’m getting these errors, might be something else …

Hum, what I needed to do was explained here in the “Multi Threaded DLL” section. Here’s an answerhub question about this how I fixed it.