Open mcmtroffaes opened 7 years ago
A quick progress update on this. I've got a branch that builds capstone with /md - however it turns out that the libyara nuget that we are using is also built with /mt instead of /md - see https://github.com/kallanreed/yara/blob/dbae9b0fd0efc87dfb24dceb4a6f72c0b84481b0/windows/vs2015/libyara/libyara.vcxproj#L158 ...
(For the record, I tracked this down with "dumpbin /directives" on libyara64.lib.)
What would be the consequences if we were to use /mt instead of /md on the project itself?
Yeah the thought crossed my mind (in fact I think that's how it originally was set up by you). Microsoft generally recommends /md though. In any case, I think the main issue would be that ffmpeg might be incompatible: the mingw64 binaries might not work with libcmt. Will test it.
... so consequently we are linking against multiple runtimes in the resulting asi file - this is a bad idea; see https://msdn.microsoft.com/en-us/library/6wtdswk0.aspx We should probably build capstone ourselves with /md. Currently we're surpressing the warning by explicitly not linking against libcmt (see commit cee359ac293592e397173f7d47bf8db26e2b2001).