标签:net 不同的 details msdn 部分 blog stand 错误 分析
原文链接地址:https://blog.csdn.net/ithzhang/article/details/13170047
MSDN中对于在不同的配置下Link的LIB作了说明:
C Runtime Library:
开关 | 对应的库 | 版本 |
/MD | MSVCRT.LIB | 多线程DLL的Release版本 |
/MDd | MSVCRTD.LIB | 多线程DLL的Debug版本 |
/MT | LIBCMT.LIB | 多线程静态链接的Release版本 |
/MTd | LIBCMTD.LIB | 多线程静态链接的Debug版本 |
/clr | MSVCMRT.LIB | 托管代码和非托管代码混合 |
/clr:pure | MSVCURT.LIB | 纯托管代码 |
C++ Standard Library:
开关 | 对应的库 | 版本 |
/MD | MSVCPRT.LIB | 多线程DLL的Release版本 |
/MDd | MSVCPRTD.LIB | 多线程DLL的Debug版本 |
/MT | LIBCPMT.LIB | 多线程静态链接的Release版本 |
/MTd | LIBCPMTD.LIB | 多线程静态链接的Debug版本 |
编译器会自动根据编译选项,选择对应的LIB文件。一般情况下这不会出现问题。
然而,在部分情况下,一旦你的程序的各个部分(LIB, OBJ…)并非由相同的编译选项编译出,而Link在一起的话,会出现各种各样的看似很难解决的问题,这类问题主要以重复定义的错误形式存在,通常的解决方法也很简单,就是选择同样的编译选项进行编译之后再Link。
VC运行库版本不同导致链接.LIB静态库时发生重复定义问题的一个案例分析和总结
标签:net 不同的 details msdn 部分 blog stand 错误 分析
原文地址:https://www.cnblogs.com/wuyuan2011woaini/p/9847718.html