Gameplay Project分发一组包含所有依赖项的静态库。它们包含的库将链接到应用程序的调试版本或发布版本中。我在他们的lib上运行了strings命令,并将它与我编译的那个进行了比较。链接器指令/FAILIFMISMATCH:"RuntimeLibrary=MD_DynamicRelease"
在我的库中设置,但不是他们的。
他们是如何以这种方式编译他们的库的?
编辑:澄清
我没有提到这发生在下一个分支上,它使用为VS2012编译的库。库的_MSC_VER是1700。
我知道您不应该链接不同版本的CRT,但我想知道他们甚至能够以这种方式编译它。
答案 0 :(得分:0)
似乎MS已经开始从vs2012添加/FAILIFMISMATCH:"RuntimeLibrary
行。 /FAILIFMISMATCH
本身是在vs2010中引入的。我已经解决了Gameplay Project sln文件,它正在使用vs2010。尝试使用vs2010并查看指令是否消失。
我认为你已经知道这一点但是指令是否存在并不重要因为你必须匹配运行时库编译选项。