LNK2005 *** 已经在 *** lib中定义

调试程序的时候下面的错误是经常遇到的,也是很吓人,其实这主要是在vs2005中调用vc6生成的lib或者dll时遇到

 

 1  1 > LIBCMT.lib(setlocal.obj) : error LNK2005: __configthreadlocale 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
 2  1 > LIBCMT.lib(tidtable.obj) : error LNK2005: __encode_pointer 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
 3  1 > LIBCMT.lib(tidtable.obj) : error LNK2005: __decode_pointer 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
 4  1 > LIBCMT.lib(invarg.obj) : error LNK2005: __invoke_watson 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
 5  1 > LIBCMT.lib(crt0dat.obj) : error LNK2005: __amsg_exit 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
 6  1 > LIBCMT.lib(crt0dat.obj) : error LNK2005: __initterm_e 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
 7  1 > LIBCMT.lib(crt0dat.obj) : error LNK2005: _exit 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
 8  1 > LIBCMT.lib(crt0dat.obj) : error LNK2005: __exit 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
 9  1 > LIBCMT.lib(crt0dat.obj) : error LNK2005: __cexit 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
10  1 > LIBCMT.lib(mlock.obj) : error LNK2005: __unlock 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
11  1 > LIBCMT.lib(mlock.obj) : error LNK2005: __lock 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
12  1 > LIBCMT.lib(winxfltr.obj) : error LNK2005: __XcptFilter 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
13  1 > LIBCMT.lib(calloc.obj) : error LNK2005: _calloc 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
14  1 > LIBCMT.lib(realloc.obj) : error LNK2005: __recalloc 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
15  1 > LIBCMT.lib(crt0init.obj) : error LNK2005: ___xi_a 已经在 msvcrtd.lib(cinitexe.obj) 中定义
16  1 > LIBCMT.lib(crt0init.obj) : error LNK2005: ___xi_z 已经在 msvcrtd.lib(cinitexe.obj) 中定义
17  1 > LIBCMT.lib(crt0init.obj) : error LNK2005: ___xc_a 已经在 msvcrtd.lib(cinitexe.obj) 中定义
18  1 > LIBCMT.lib(crt0init.obj) : error LNK2005: ___xc_z 已经在 msvcrtd.lib(cinitexe.obj) 中定义
19  1 > LIBCMT.lib(hooks.obj) : error LNK2005:  " void __cdecl terminate(void) "  ( ? terminate@@YAXXZ) 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
20  1 > LIBCMT.lib(dosmap.obj) : error LNK2005: __errno 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
21  1 > LIBCMT.lib(errmode.obj) : error LNK2005: ___set_app_type 已经在 msvcrtd.lib(MSVCR80D.dll) 中定义
22  1 > msvcrtd.lib(MSVCR80D.dll) : error LNK2005: __setmbcp 已经在 LIBCMT.lib(mbctype.obj) 中定义
23  1 > LINK : warning LNK4098: 默认库“msvcrtd.lib”与其他库的使用冲突;请使用  / NODEFAULTLIB:library
24  1 > LINK : warning LNK4098: 默认库“LIBCMT”与其他库的使用冲突;请使用  / NODEFAULTLIB:library
25  1 > LIBCMT.lib(crt0.obj) : error LNK2019: 无法解析的外部符号 _main,该符号在函数 ___tmainCRTStartup 中被引用

 

其实仔细观察还是可以解决的,如下:


链接器->输入->忽略特定库: libcmt.lib

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值