我的一个VC6的工程在VC7下编译没问题,但是在链接时却碰到如下问题:正在链接...
LINK : warning LNK4075: 忽略“/EDITANDCONTINUE”(由于“/INCREMENTAL:NO”规范)
LIBC.lib(crt0dat.obj) : error LNK2005: _exit 已经在 msvcrtd.lib(MSVCR71D.dll) 中定义
LIBC.lib(crt0dat.obj) : error LNK2005: __exit 已经在 msvcrtd.lib(MSVCR71D.dll) 中定义
LIBC.lib(crt0dat.obj) : error LNK2005: __cexit 已经在 msvcrtd.lib(MSVCR71D.dll) 中定义
LIBC.lib(crt0dat.obj) : error LNK2005: __c_exit 已经在 msvcrtd.lib(MSVCR71D.dll) 中定义
LIBC.lib(atox.obj) : error LNK2005: _atoi 已经在 msvcrtd.lib(MSVCR71D.dll) 中定义
LIBC.lib(crt0init.obj) : error LNK2005: ___xc_z 已经在 msvcrtd.lib(cinitexe.obj) 中定义
LIBC.lib(crt0init.obj) : error LNK2005: ___xc_a 已经在 msvcrtd.lib(cinitexe.obj) 中定义
LIBC.lib(crt0init.obj) : error LNK2005: ___xi_z 已经在 msvcrtd.lib(cinitexe.obj) 中定义
LIBC.lib(crt0init.obj) : error LNK2005: ___xi_a 已经在 msvcrtd.lib(cinitexe.obj) 中定义
LIBC.lib(crt0.obj) : error LNK2005: __amsg_exit 已经在 msvcrtd.lib(MSVCR71D.dll) 中定义
msvcrtd.lib(MSVCR71D.dll) : error LNK2005: __setmbcp 已经在 LIBC.lib(mbctype.obj) 中定义
LINK : warning LNK4098: 默认库“msvcrtd.lib”与其他库的使用冲突;使用 /NODEFAULTLIB:library
LINK : warning LNK4098: 默认库“LIBC”与其他库的使用冲突;使用 /NODEFAULTLIB:library
LIBC.lib(crt0.obj) : error LNK2019: 无法解析的外部符号 _main ,该符号在函数 _mainCRTStartup 中被引用
Bin/AudioD.exe : fatal error LNK1120: 1 个无法解析的外部命令请问这是什么问题?该如何解决?
(我另外一个VC6转VC7的工程却没以上问题)

解决方案 »

  1.   

    那你就忽略默认库 LIBC.lib 吧
      

  2.   

    谢谢!我忽略了LIBC.lib,就成功了!
    可是这到底是什么意思,为什么要忽略?为什么我另外一个VC6转VC7的工程却没这个问题?
      

  3.   

    我现在又碰到问题:
    正在链接...
    LINK : fatal error LNK1104: 无法打开文件“LIBC.lib”但是我忽略了LIBC.lib,还是不成功,这到底是什么原因引起的?
      

  4.   

    代码生成(code generation)问题,到工程属性里面设置一下
      

  5.   

    是否运行库不一致 code generation中