I am trying to deal with the following errors when linking my Debug-DLL project with Skia:
2>skia.lib(skia.SkSLUtil.obj) : error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2' in low_level_mmap.obj
2>skia.lib(skia.SkSLUtil.obj) : error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MDd_DynamicDebug' in low_level_mmap.obj
2>skia.lib(skia.SkString.obj) : error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2' in low_level_mmap.obj
2>skia.lib(skia.SkString.obj) : error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MT_StaticRelease' doesn't match value 'MDd_DynamicDebug' in low_level_mmap.obj
Here are two problems I have:
1) I don't know how to control these compiler defines during the ninja build process, even by rummaging around in the BUILD*.gn files. There certainly doesn't appear to be any documentation about them. How would I use gn to control these settings (or the related settings, _ALLOW_ITERATOR_DEBUG_LEVEL_MISMATCH, _ALLOW_RUNTIME_LIBRARY_MISMATCH, _DLL, and _DEBUG)?
2) I had updated bug 5928 with the problem, and with some time having passed I thought I'd try to update my skia code to the latest version to see if it was fixed. The documentation doesn't say how to update with the latest version, so I just guessed that I should be pulling from the master branch, and then re-running 'gn gen'. If this isn't the case (it did something reasonable when I tried it), could someone let me know, please?
Thanks!