最近一直遇到这个问题,到现在还没有完全弄懂,MSDN上说
If you link your program from the command line without a compiler option that specifies a C run-time library, the linker will use LIBCMT.LIB. This is different from previous versions of Visual C++ which used LIBC.LIB, the single-threaded library, instead.
链接http://msdn.microsoft.com/zh-cn/library/abx4dbyh.aspx
转自http://blog.sina.com.cn/s/blog_3e9b01a50100ldsy.html
下表显示根据要使用的运行时库应忽略的库。
若要使用此运行时库 请忽略这些库
单线程 (libc.lib)
libcmt.lib、msvcrt.lib、libcd.lib、libcmtd.lib、msvcrtd.lib
多线程 (libcmt.lib)
libc.lib、msvcrt.lib、libcd.lib、libcmtd.lib、msvcrtd.lib
使用 DLL 的多线程 (msvcrt.lib)
libc.lib、libcmt.lib、libcd.lib、libcmtd.lib、msvcrtd.lib
调试单线程 (libcd.lib)
libc.lib、libcmt.lib、msvcrt.lib、libcmtd.lib、msvcrtd.lib
调试多线程 (libcmtd.lib)
libc.lib、libcmt.lib、msvcrt.lib、libcd.lib、msvcrtd.lib
使用 DLL 的调试多线程 (msvcrtd.lib)
libc.lib、libcmt.lib、msvcrt.lib、libcd.lib、libcmtd.lib
本文详细介绍了在使用Visual C++进行程序链接时,不同运行时库的选择及相互之间的关系。针对单线程、多线程、使用DLL等场景给出了具体的库忽略建议。
8287

被折叠的 条评论
为什么被折叠?



