gpt4 book ai didi

c++ - 切换到非调试运行时/MT 导致链接错误

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:09:47 24 4
gpt4 key购买 nike

我正在尝试将我的可执行文件部署到另一台机器,因此我需要非调试运行时。

切换到非调试运行时/MT 会导致链接错误。/Mtd 编译正常。以下是许多错误的示例。

1>libcpmtd.lib(_tolower.obj) : error LNK2001: unresolved external symbol _calloc_dbg 1>libcpmtd.lib(locale.obj) : error LNK2001: unresolved external symbol _calloc_dbg 1>libcpmtd.lib(wlocale.obj) : error LNK2001: unresolved external symbol _calloc_dbg 1>libcpmtd.lib(StlCompareStringA.obj) : error LNK2001: unresolved external symbol _free_dbg 1>libcpmtd.lib(locale.obj) : error LNK2001: unresolved external symbol _free_dbg 1>libcpmtd.lib(wlocale.obj) : error LNK2001: unresolved external symbol _free_dbg 1>libcpmtd.lib(xlocale.obj) : error LNK2001: unresolved external symbol _free_dbg 1>libcpmtd.lib(xwcsxfrm.obj) : error LNK2001: unresolved external symbol _free_dbg

如果我明确告诉链接器与 libcmtd.lib 链接,它甚至可以使用/MT 进行编译,但这样做的后果是什么?

如何编译我的代码? (无需执行上述技巧?)

编辑:我使用 cout 注释掉了语句并编译了....为什么...

最佳答案

您说您明确强制将 libcmtd.lib 作为链接器输入 - 这是静态 CRT 的调试版本,并且正是与/MT(声明与释放 静态 CRT)。

从链接器输入中完全删除 libcmtd 并检查它是否有效。

关于c++ - 切换到非调试运行时/MT 导致链接错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32429836/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com