Tho*_*mas 4 c++ linker visual-studio visual-c++
我正在尝试将我的可执行文件部署到另一台机器上,所以我需要非调试运行时.
切换到非调试运行时/ MT会导致链接错误./ Mtd编译好.这是许多错误的抽样.
1> libcpmtd.lib(_tolower.obj):错误LNK2001:未解析的外部符号_calloc_dbg 1> libcpmtd.lib(locale.obj):错误LNK2001:未解析的外部符号_calloc_dbg 1> libcpmtd.lib(wlocale.obj):错误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) :错误LNK2001:未解析的外部符号_free_dbg 1> libcpmtd.lib(xlocale.obj):错误LNK2001:未解析的外部符号_free_dbg 1> libcpmtd.lib(xwcsxfrm.obj):错误LNK2001:未解析的外部符号_free_dbg
如果我明确地告诉链接器与libcmtd.lib链接,它甚至可以用/ MT编译,但这会带来什么后果?
如何让我的代码编译?(不必做上面的伎俩?)
编辑:我用cout注释掉了这些语句并编译了....为什么......
您说明确强制libcmtd.lib作为链接器输入 - 这是静态CRT 的调试版本,并且正是与/ MT(声明与发布静态CRT的链接的交换机)冲突的根源.
从链接器输入中完全删除libcmtd并检查它是否有效.
归档时间: |
|
查看次数: |
4139 次 |
最近记录: |