1>nafxcwd.lib(dllmodul.obj) : error lnk2005: dllmain 已經在 libcmtd.lib(dllmain.obj) 中定義
1>nafxcwd.lib(afxmem.obj) : error lnk2005: "void __cdecl operator delete(void *)" (??3@yaxpeax@z) 已經在 libcmtd.lib(dbgdel.obj) 中定義
1> 正在建立庫 d:\進行中專案\sktwater\code\x64\debug\sktwater.lib 和物件 d:\進行中專案\sktwater\code\x64\debug\sktwater.exp
1>d:\進行中專案\sktwater\code\x64\debug\sktwater.dll : fatal error lnk1169: 找到乙個或多個多重定義的符號
出現錯誤的原因是:
crt 庫對new、delete和dllmain函式使用弱外部鏈結。mfc 庫也包含new、delete和dllmain函式。這些函式要求先鏈結 mfc 庫,然後再鏈結 crt 庫。
解決辦法:
強制鏈結器按照正確的順序鏈結庫
專案--屬性 ---聯結器---輸入
附加依賴項 空格nafxcwd.lib; libcmtd.lib;
忽略指定庫 空格nafxcwd.lib; libcmtd.lib;
如圖:
LNK2005 連線錯誤解決辦法
nafxcwd.lib afxmem.obj error lnk2005 void cdecl operator new unsigned int 2 yapaxi z 已經在 libcmtd.lib new.obj 中定義 nafxcwd.lib afxmem.obj error lnk2005 ...
LNK2005 連線錯誤解決辦法
nafxcwd.lib afxmem.obj error lnk2005 void cdecl operator new unsigned int 2 yapaxi z 已經在 libcmtd.lib new.obj 中定義 nafxcwd.lib afxmem.obj error lnk2005 ...
LNK2005 連線錯誤解決辦法
nafxcwd.lib afxmem.obj error lnk2005 void cdecl operator new unsigned int 2 yapaxi z 已經在 libcmtd.lib new.obj 中定義 nafxcwd.lib afxmem.obj error lnk2005 ...