MFC编译问题

hypozhu 2010-01-25 05:59:57
小弟,最近编写一个控件,支持MFC框架,编译出错,路过大侠多指点啊!程序中应用到第三方静态LIB。怎么解决呢,急啊!!
ET199AutoLib.lib(SlotMgr.obj) : error LNK2005: "public: virtual void __thiscall CObject::Serialize(class CArchive &)" (?Serialize@CObject@@UAEXAAVCArchive@@@Z) already defined in mfc42d.lib(MFC42D.DLL)
ET199AutoLib.lib(Token199Auto.obj) : error LNK2005: "public: virtual void __thiscall CObject::Serialize(class CArchive &)" (?Serialize@CObject@@UAEXAAVCArchive@@@Z) already defined in mfc42d.lib(MFC42D.DLL)
ET199AutoLib.lib(CspObject.obj) : error LNK2005: "public: virtual void __thiscall CObject::Serialize(class CArchive &)" (?Serialize@CObject@@UAEXAAVCArchive@@@Z) already defined in mfc42d.lib(MFC42D.DLL)
ET199AutoLib.lib(CspObject.obj) : error LNK2005: "public: static void __stdcall CObject::operator delete(void *)" (??3CObject@@SGXPAX@Z) already defined in mfc42d.lib(MFC42D.DLL)
ET199AutoLib.lib(CspContextMgr.obj) : error LNK2005: "public: virtual void __thiscall CObject::Serialize(class CArchive &)" (?Serialize@CObject@@UAEXAAVCArchive@@@Z) already defined in mfc42d.lib(MFC42D.DLL)
ET199AutoLib.lib(CspContext.obj) : error LNK2005: "public: __thiscall AFX_MAINTAIN_STATE2::~AFX_MAINTAIN_STATE2(void)" (??1AFX_MAINTAIN_STATE2@@QAE@XZ) already defined in mfc42d.lib(MFC42D.DLL)
ET199AutoLib.lib(ui.obj) : error LNK2005: "public: virtual void __thiscall CObject::Serialize(class CArchive &)" (?Serialize@CObject@@UAEXAAVCArchive@@@Z) already defined in mfc42d.lib(MFC42D.DLL)
ET199AutoLib.lib(ui.obj) : error LNK2005: "public: static void __stdcall CObject::operator delete(void *)" (??3CObject@@SGXPAX@Z) already defined in mfc42d.lib(MFC42D.DLL)
ET199AutoLib.lib(ui.obj) : error LNK2005: "public: __thiscall AFX_MAINTAIN_STATE2::~AFX_MAINTAIN_STATE2(void)" (??1AFX_MAINTAIN_STATE2@@QAE@XZ) already defined in mfc42d.lib(MFC42D.DLL)
ET199AutoLib.lib(KBInput.obj) : error LNK2005: "public: virtual void __thiscall CObject::Serialize(class CArchive &)" (?Serialize@CObject@@UAEXAAVCArchive@@@Z) already defined in mfc42d.lib(MFC42D.DLL)
ET199AutoLib.lib(SoftKeyboardDlg.obj) : error LNK2005: "public: virtual void __thiscall CObject::Serialize(class CArchive &)" (?Serialize@CObject@@UAEXAAVCArchive@@@Z) already defined in mfc42d.lib(MFC42D.DLL)
ET199AutoLib.lib(SlotMgr.obj) : warning LNK4006: "public: virtual void __thiscall CObject::Serialize(class CArchive &)" (?Serialize@CObject@@UAEXAAVCArchive@@@Z) already defined in mfc42d.lib(MFC42D.DLL); second definition ignored
ET199AutoLib.lib(Token199Auto.obj) : warning LNK4006: "public: virtual void __thiscall CObject::Serialize(class CArchive &)" (?Serialize@CObject@@UAEXAAVCArchive@@@Z) already defined in mfc42d.lib(MFC42D.DLL); second definition ignored
ET199AutoLib.lib(CspObject.obj) : warning LNK4006: "public: virtual void __thiscall CObject::Serialize(class CArchive &)" (?Serialize@CObject@@UAEXAAVCArchive@@@Z) already defined in mfc42d.lib(MFC42D.DLL); second definition ignored
ET199AutoLib.lib(CspObject.obj) : warning LNK4006: "public: static void __stdcall CObject::operator delete(void *)" (??3CObject@@SGXPAX@Z) already defined in mfc42d.lib(MFC42D.DLL); second definition ignored
ET199AutoLib.lib(CspContextMgr.obj) : warning LNK4006: "public: virtual void __thiscall CObject::Serialize(class CArchive &)" (?Serialize@CObject@@UAEXAAVCArchive@@@Z) already defined in mfc42d.lib(MFC42D.DLL); second definition ignored
ET199AutoLib.lib(CspContext.obj) : warning LNK4006: "public: __thiscall AFX_MAINTAIN_STATE2::~AFX_MAINTAIN_STATE2(void)" (??1AFX_MAINTAIN_STATE2@@QAE@XZ) already defined in mfc42d.lib(MFC42D.DLL); second definition ignored
ET199AutoLib.lib(ui.obj) : warning LNK4006: "public: virtual void __thiscall CObject::Serialize(class CArchive &)" (?Serialize@CObject@@UAEXAAVCArchive@@@Z) already defined in mfc42d.lib(MFC42D.DLL); second definition ignored
ET199AutoLib.lib(ui.obj) : warning LNK4006: "public: static void __stdcall CObject::operator delete(void *)" (??3CObject@@SGXPAX@Z) already defined in mfc42d.lib(MFC42D.DLL); second definition ignored
ET199AutoLib.lib(ui.obj) : warning LNK4006: "public: __thiscall AFX_MAINTAIN_STATE2::~AFX_MAINTAIN_STATE2(void)" (??1AFX_MAINTAIN_STATE2@@QAE@XZ) already defined in mfc42d.lib(MFC42D.DLL); second definition ignored
ET199AutoLib.lib(KBInput.obj) : warning LNK4006: "public: virtual void __thiscall CObject::Serialize(class CArchive &)" (?Serialize@CObject@@UAEXAAVCArchive@@@Z) already defined in mfc42d.lib(MFC42D.DLL); second definition ignored
ET199AutoLib.lib(SoftKeyboardDlg.obj) : warning LNK4006: "public: virtual void __thiscall CObject::Serialize(class CArchive &)" (?Serialize@CObject@@UAEXAAVCArchive@@@Z) already defined in mfc42d.lib(MFC42D.DLL); second definition ignored
Creating library Debug/ET199Auto.lib and object Debug/ET199Auto.exp
mfcs42d.lib(nolib.obj) : warning LNK4098: defaultlib "mfc42.lib" conflicts with use of other libs; use /NODEFAULTLIB:library
mfcs42d.lib(nolib.obj) : warning LNK4098: defaultlib "mfcs42.lib" conflicts with use of other libs; use /NODEFAULTLIB:library
msvcrtd.lib(cinitexe.obj) : warning LNK4098: defaultlib "msvcrt.lib" conflicts with use of other libs; use /NODEFAULTLIB:library
Debug/ET199Auto.dll : fatal error LNK1169: one or more multiply defined symbols found
Error executing link.exe.

ET199Auto.dll - 12 error(s), 14 warning(s)
...全文
271 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
cattycat 2010-01-25
  • 打赏
  • 举报
回复
这个库跟mfc的库部分冲突了。看你的这个第三方lib是否需要定义什么宏来避免冲突。
yjxkmnm 2010-01-25
  • 打赏
  • 举报
回复
长见识了
macrojj 2010-01-25
  • 打赏
  • 举报
回复
貌似不是第三方库的问题
lovesi3344 2010-01-25
  • 打赏
  • 举报
回复
牛逼 原来大家都在学MFC 了
kingstarer 2010-01-25
  • 打赏
  • 举报
回复
不是缺少了库 而是说函数重复定义

估计是库的版本不对 应该有一个release版和debug版的
冻结 2010-01-25
  • 打赏
  • 举报
回复
缺了库了。
_JeffreyWu 2010-01-25
  • 打赏
  • 举报
回复
3lib为你的第三方库名
_JeffreyWu 2010-01-25
  • 打赏
  • 举报
回复

#pragma comment(lib, "3lib");

64,685

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧