premake设置静态运行库

(金庆的专栏)

链接protobuf库时,碰到RuntimeLibrary不匹配:
1>libprotobufd.lib(int128.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MTd_StaticDebug”不匹配值“MDd_DynamicDebug”(baseapp.obj 中)

原因为protobuf使用了静态运行库,而应用工程是用premake生成的,默认使用动态运行库。

premake的runtime只能设置 Debug 或 Release:
runtime "Release"

应该使用 flags { "StaticRuntime" } 来设置静态运行库。

参考:
http://industriousone.com/topic/how-set-runtime-library

04-26 03:55