首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Visual Studio链接错误LNK2005和LNK2020

Visual Studio链接错误LNK2005和LNK2020
EN

Stack Overflow用户
提问于 2010-01-22 21:30:14
回答 1查看 2.7K关注 0票数 1

我使用的是visual studio 2003,在我的项目中出现了以下链接错误:

代码语言:javascript
复制
Linking...
LINK : warning LNK4075: ignoring '/EDITANDCONTINUE' due to '/INCREMENTAL:NO' specification
msvcrtd.lib(MSVCR71D.dll) : error LNK2005: _fprintf already defined in LIBCMTD.lib(fprintf.obj)
C:\Documents and Settings\mz07\Desktop\project\HLconsoleExample\Debug\HLconsoleExample.exe : fatal error LNK1169: one or more multiply defined symbols found

然后我将libcmtd.lib包含在"ignore specific library“行中,并得到另一个错误:

代码语言:javascript
复制
Linking...
LINK : warning LNK4075: ignoring '/EDITANDCONTINUE' due to '/INCREMENTAL:NO' specification
LINK : error LNK2020: unresolved token (0A000037) _CxxThrowException
LINK : error LNK2020: unresolved token (0A000039) delete
LINK : fatal error LNK1120: 2 unresolved externals

这是我的主类的开始:

代码语言:javascript
复制
#include <cstdio>
#include <iostream>

#if defined(WIN32)
# include <conio.h>
#else
# include "conio.h"
#endif

#include <HL/hl.h>
#include <HD/hd.h>

#include <HDU/hduVector.h>
#include <HDU/hduError.h>
...
int main(int argc, char *argv[])
{
  HHD hHD;
  HHLRC hHLRC;
  HDErrorInfo error;
...
}

我将我正在使用的所有库都包含到了链接器属性中。下面是它的命令行输出:

代码语言:javascript
复制
/OUT:"C:\Documents and Settings\mz07\Desktop\project\HLconsoleExample\Debug\HLconsoleExample.exe" /INCREMENTAL /NOLOGO /NODEFAULTLIB:"libcmtd.lib" /DEBUG /ASSEMBLYDEBUG /PDB:"C:\Documents and Settings\mz07\Desktop\project\HLconsoleExample\Debug/HLconsoleExample.pdb" /FIXED:No hl.lib hd.lib HDUD.lib  kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib "\Program Files\SensAble\3DTouch\lib\hl.lib" "\Program Files\SensAble\3DTouch\lib\hd.lib" "\Program Files\SensAble\3DTouch\utilities\src\Hdu\Debug\HDUD.lib"

我是c++的新手,我不太了解链接是如何工作的:)所以任何帮助我都会很感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-01-22 21:35:38

您正在链接的.lib的代码是用不兼容的编译器设置编译的。问题之一是项目+属性,C/C++,代码生成,运行库。/MD与/MT不兼容。您必须重新构建.libs以匹配您的.exe项目设置,或者反过来。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2117452

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档