2010-05-05 73 views
0

我是VC++的新手,所以请原谅我,如果这是愚蠢的。LNK2005:在VC++中删除已定义的错误

我在一个项目下有7个解决方案。其中六个构建静态库,它们在7号内部链接以产生exe。所有项目的运行时配置都是MultiThreaded Debug。 用于生成exe的sln是使用MFC的其他slns使用标准的runtiem库。我试图将这些更改为MFC,但仍然收到相同的错误。 所有六个slns成功构建。 当我尝试建立exe文件 - 得到follwoing错误:

nafxcwd.lib(afxmem.obj) : error LNK2005: "void __cdecl operator delete(void *,int,char const *,int)" ([email protected]@Z) already defined in tara_common.lib(fileStream.obj) 

这是奇怪,因为tara_common是我生成的库之一,fileStream.cpp是只用删除一个指针文件。

我建立它在冗长的MOD,所以我附加输出。

ENVIRONMENT SPACE 

_ACP_ATLPROV=C:\Program Files\Microsoft Visual Studio 9.0\VC\Bin\ATLProv.dll 
    _ACP_INCLUDE=C:\Program Files\Microsoft Visual Studio 9.0\VC\include;C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include;C:\Program Files\Microsoft SDKs\Windows\v6.0A\\include;C:\Program Files\Microsoft SDKs\Windows\v6.0A\include 
    _ACP_LIB=C:\fta\tara\database\build\Debug;C:\Program Files\Microsoft Visual Studio 9.0\VC\lib;C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\lib;C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\lib\i386;C:\Program Files\Microsoft SDKs\Windows\v6.0A\\lib;C:\Program Files\Microsoft SDKs\Windows\v6.0A\lib;C:\Program Files\Microsoft Visual Studio 9.0\;C:\Program Files\Microsoft Visual Studio 9.0\lib 
    _ACP_PATH=C:\Program Files\Microsoft Visual Studio 9.0\VC\bin;C:\Program Files\Microsoft SDKs\Windows\v6.0A\\bin;C:\Program Files\Microsoft Visual Studio 9.0\Common7\Tools\bin;C:\Program Files\Microsoft Visual Studio 9.0\Common7\tools;C:\Program Files\Microsoft Visual Studio 9.0\Common7\ide;C:\Program Files\HTML Help Workshop;C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin;c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727;C:\Program Files\Microsoft Visual Studio 9.0\;C:\WINDOWS\SysWow64;;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;c:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Microsoft Visual Studio 9.0\VC\bin;C:\Program Files\GnuWin32\bin;C:\Python26 
    ALLUSERSPROFILE=C:\Documents and Settings\All Users 
    CLIENTNAME=Console 
    CommonProgramFiles=C:\Program Files\Common Files 
    ComSpec=C:\WINDOWS\system32\cmd.exe 
    FP_NO_HOST_CHECK=NO 
    HOMEDRIVE=C: 
    INCLUDE=C:\Program Files\Microsoft Visual Studio 9.0\VC\include;C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include;C:\Program Files\Microsoft SDKs\Windows\v6.0A\\include;C:\Program Files\Microsoft SDKs\Windows\v6.0A\include 
    LIB=C:\fta\tara\database\build\Debug;C:\Program Files\Microsoft Visual Studio 9.0\VC\lib;C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\lib;C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\lib\i386;C:\Program Files\Microsoft SDKs\Windows\v6.0A\\lib;C:\Program Files\Microsoft SDKs\Windows\v6.0A\lib;C:\Program Files\Microsoft Visual Studio 9.0\;C:\Program Files\Microsoft Visual Studio 9.0\lib 
    LIBPATH=c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727;C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\lib;C:\Program Files\Microsoft Visual Studio 9.0\VC\lib 
    LOGONSERVER=\\xxx 
    NUMBER_OF_PROCESSORS=1 
    OS=Windows_NT 
    PATH=C:\Program Files\Microsoft Visual Studio 9.0\VC\bin;C:\Program Files\Microsoft SDKs\Windows\v6.0A\\bin;C:\Program Files\Microsoft Visual Studio 9.0\Common7\Tools\bin;C:\Program Files\Microsoft Visual Studio 9.0\Common7\tools;C:\Program Files\Microsoft Visual Studio 9.0\Common7\ide;C:\Program Files\HTML Help Workshop;C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin;c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727;C:\Program Files\Microsoft Visual Studio 9.0\;C:\WINDOWS\SysWow64;;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;c:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\Program Files\TortoiseSVN\bin;C:\Program Files\Microsoft Visual Studio 9.0\VC\bin;C:\Program Files\GnuWin32\bin;C:\Python26 
    PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH 
    PROCESSOR_ARCHITECTURE=x86 
    PROCESSOR_IDENTIFIER=x86 Family 6 Model 23 Stepping 10, GenuineIntel 
    PROCESSOR_LEVEL=6 
    PROCESSOR_REVISION=170a 
    ProgramFiles=C:\Program Files 
    SESSIONNAME=Console 
    SystemDrive=C: 
    SystemRoot=C:\WINDOWS 
    VisualStudioDir=C:\Documents and Settings\sgupta\My Documents\Visual Studio 2008 
    VS90COMNTOOLS=C:\Program Files\Microsoft Visual Studio 9.0\Common7\Tools\ 
    WecVersionForRosebud.710=2 
    windir=C:\WINDOWS 

COMMAND LINES: 

Creating temporary file "c:\fta\tools\channel_editor\IvoDB\Debug\RSP00011018082288.rsp" with contents 
[ 
/VERBOSE /OUT:"C:\fta\tools\channel_editor\\Builds\IvoDB_1_35_Debug.exe" /INCREMENTAL /LIBPATH:"..\..\..\3rdparty\boost_1_42_0\stage\lib" /MANIFEST /MANIFESTFILE:"Debug\IvoDB_1_35_Debug.exe.intermediate.manifest" /MANIFESTUAC:"level='asInvoker' uiAccess='false'" /DELAYLOAD:"OleAcc.dll" /DEBUG /PDB:"C:\fta\tools\channel_editor\Builds\IvoDB_1_35_Debug.pdb" /SUBSYSTEM:WINDOWS /DYNAMICBASE /NXCOMPAT /MACHINE:X86 ..\..\..\tara\database\build\Debug\tara_database.lib ..\..\..\tara\common\build\Debug\tara_common.lib ..\..\..\3rdparty\sqliteWrapper\Debug\sqliteWrapper.lib ..\..\..\3rdparty\sqlite_3_6_18\Debug\sqlite.lib ..\..\..\stsdk\modules\win32\Debug\modules.lib ..\..\..\stsdk\axeapi\win32\Debug\axeapi.lib DelayImp.lib 

".\Debug\AntennaSettings.obj" 

".\Debug\AudioVideoSettings.obj" 

".\Debug\CMDatabase.obj" 

".\Debug\CMSettings.obj" 

".\Debug\ColorFileDialog.obj" 

".\Debug\ColorStatic.obj" 

".\Debug\DragDropListCtrl.obj" 

".\Debug\DragDropTreeCtrl.obj" 

".\Debug\FavouriteEdit.obj" 

".\Debug\FavTab.obj" 

".\Debug\FindProgram.obj" 

".\Debug\HyperLink.obj" 

".\Debug\IvoDB.obj" 

".\Debug\IvoDBDlg.obj" 

".\Debug\IvoDBInfo.obj" 

".\Debug\IvoDBInfoTab.obj" 

".\Debug\IvoDbStruct.obj" 

".\Debug\LayoutHelper.obj" 

".\Debug\MainTab.obj" 

".\Debug\OperTabCtrl.obj" 

".\Debug\ParentalLock.obj" 

".\Debug\ProgramEdit.obj" 

".\Debug\ProgramTab.obj" 

".\Debug\PVRSettings.obj" 

".\Debug\SatTab.obj" 

".\Debug\SettingsBase.obj" 

".\Debug\SettingsTab.obj" 

".\Debug\STBSettings.obj" 

".\Debug\stdafx.obj" 

".\Debug\TimeDate.obj" 

".\Debug\TransponderEdit.obj" 

".\Debug\TreeTab.obj" 

".\Debug\UserPreferences.obj" 

".\Debug\Xmodem.obj" 

".\Debug\IvoDB.res" 

".\Debug\IvoDB_1_35_Debug.exe.embed.manifest.res" 
] 


Creating command line "link.exe @c:\fta\tools\channel_editor\IvoDB\Debug\RSP00011018082288.rsp /NOLOGO /ERRORREPORT:PROMPT" 



**Processed /DEFAULTLIB:atlsd.lib 
Processed /DEFAULTLIB:ws2_32.lib 
Processed /DEFAULTLIB:mswsock.lib 
Processed /DISALLOWLIB:mfc90d.lib 
Processed /DISALLOWLIB:mfcs90d.lib 
Processed /DISALLOWLIB:mfc90.lib 
Processed /DISALLOWLIB:mfcs90.lib 
Processed /DISALLOWLIB:mfc90ud.lib 
Processed /DISALLOWLIB:mfcs90ud.lib 
Processed /DISALLOWLIB:mfc90u.lib 
Processed /DISALLOWLIB:mfcs90u.lib 
Processed /DISALLOWLIB:uafxcwd.lib 
Processed /DISALLOWLIB:uafxcw.lib 
Processed /DISALLOWLIB:nafxcw.lib 
     Found "void __cdecl operator delete(void *)" ([email protected]@Z) 
     Referenced in axeapi.lib(ipcgeneric.obj) 

     Referenced in axeapi.lib(ipccommon.obj) 
     Referenced in axeapi.lib(activeobject.obj) 
     Referenced in nafxcwd.lib(nolib.obj) 
     Referenced in sqliteWrapper.lib(DbConnection.obj) 
     Referenced in sqliteWrapper.lib(Statement.obj) 
     Referenced in axeapi.lib(nvstorage.obj) 
     Referenced in axeapi.lib(avctrler.obj) 
     Referenced in tara_common.lib(trace.obj) 
     Referenced in tara_common.lib(ssPrintf.obj) 
     Referenced in tara_common.lib(taraConfig.obj) 
     Referenced in tara_common.lib(stream.obj) 
     Referenced in tara_common.lib(STBConfigurationStorage.obj) 
     Referenced in tara_common.lib(STBConfiguration.obj) 
     Referenced in tara_common.lib(configParser.obj) 
     Referenced in tara_common.lib(fileStream.obj) 
     Referenced in tara_database.lib(SatStream.obj) 
     Referenced in tara_database.lib(Service.obj) 
     Referenced in tara_database.lib(ServiceList.obj) 
     Referenced in tara_common.lib(playerConfig.obj) 
     Referenced in UserPreferences.obj 
     Referenced in Xmodem.obj 
     Referenced in tara_database.lib(init.obj) 
     Referenced in tara_database.lib(Satellite.obj) 
     Referenced in TransponderEdit.obj 
     Referenced in TreeTab.obj 
     Referenced in TreeTab.obj 
     Referenced in UserPreferences.obj 
     Referenced in stdafx.obj 
     Referenced in TimeDate.obj 
     Referenced in TimeDate.obj 
     Referenced in TransponderEdit.obj 
     Referenced in SettingsTab.obj 
     Referenced in SettingsTab.obj 
     Referenced in STBSettings.obj 
     Referenced in STBSettings.obj 
     Referenced in SatTab.obj 
     Referenced in SatTab.obj 
     Referenced in SettingsBase.obj 
     Referenced in SettingsBase.obj 
     Referenced in ProgramTab.obj 
     Referenced in ProgramTab.obj 
     Referenced in PVRSettings.obj 
     Referenced in PVRSettings.obj 
     Referenced in ParentalLock.obj 
     Referenced in ParentalLock.obj 
     Referenced in ProgramEdit.obj 
     Referenced in ProgramEdit.obj 
     Referenced in MainTab.obj 
     Referenced in MainTab.obj 
     Referenced in OperTabCtrl.obj 
     Referenced in OperTabCtrl.obj 
     Referenced in IvoDBInfoTab.obj 
     Referenced in IvoDbStruct.obj 
     Referenced in LayoutHelper.obj 
     Referenced in LayoutHelper.obj 
     Referenced in IvoDBDlg.obj 
     Referenced in IvoDBInfo.obj 
     Referenced in IvoDBInfo.obj 
     Referenced in IvoDBInfoTab.obj 
     Referenced in HyperLink.obj 
     Referenced in IvoDB.obj 
     Referenced in IvoDB.obj 
     Referenced in IvoDBDlg.obj 
     Referenced in FavTab.obj 
     Referenced in FavTab.obj 
     Referenced in FindProgram.obj 
     Referenced in FindProgram.obj 
     Referenced in DragDropTreeCtrl.obj 
     Referenced in DragDropTreeCtrl.obj 
     Referenced in FavouriteEdit.obj 
     Referenced in FavouriteEdit.obj 
     Referenced in ColorFileDialog.obj 
     Referenced in ColorStatic.obj 
     Referenced in DragDropListCtrl.obj 
     Referenced in DragDropListCtrl.obj 
     Referenced in CMDatabase.obj 
     Referenced in CMDatabase.obj 
     Referenced in CMSettings.obj 
     Referenced in CMSettings.obj 
     Referenced in AntennaSettings.obj 
     Referenced in AntennaSettings.obj 
     Referenced in AudioVideoSettings.obj 
     Referenced in AudioVideoSettings.obj 
     Loaded nafxcwd.lib(afxmem.obj) 
nafxcwd.lib(afxmem.obj) : error LNK2005: "void __cdecl operator delete(void *,int,char const *,int)" ([email protected]@Z) already defined in tara_common.lib(fileStream.obj)** 

请帮助我,我已经浪费了3天在网上看,并尝试所有可能的解决方案,我发现。

在此先感谢, SG

回答

4

通常这意味着您尝试链接链接至不同版本的运行时库的可执行文件(.exe和.dll)。 (如果你将DLL链接在一起或者链接到一个EXE文件,你通常应该使用RTL的动态版本。)

+0

非常感谢,我将运行时库更改为多线程调试DLL并且编译正常。 非常感谢。 – user333422 2010-05-05 13:25:05