小编urb*_*nzz的帖子

GoogleTest 编译时出现 MT_StaticRelease 错误

如何使用 /MT 选项强制 google 测试编译?我看到 google test 尝试使用 MT 进行编译(internal_utils.cmake 第 33 行):

  if (NOT BUILD_SHARED_LIBS AND NOT gtest_force_shared_crt)
    string(REPLACE "/MD" "-MT" ${flag_var} "${${flag_var}}")
  endif()
Run Code Online (Sandbox Code Playgroud)

但它不起作用(BUILD_SHARED_LIBS 和 gtest_force_shared_crt 被禁用)。
当我的项目使用 MT 编译时,出现错误:

gtest.lib(gtest-all.obj):错误LNK2038:检测到“RuntimeLibrary”不匹配:值“MD_DynamicRelease”与值“MT_StaticRelease”不匹配

还有更多一些LNK2005和LNK4217。如果我尝试在没有 MT 的情况下编译我的项目,则一切都可以正常编译。我该如何解决?提前致谢!

c++ cmake googletest

6
推荐指数
1
解决办法
1948
查看次数

标签 统计

c++ ×1

cmake ×1

googletest ×1