1.问题
CaptureIlib(CaptureI.dll) : error LNK2005: "public: __cdecl Capturer::Capturer(class QObject *)" (??0CapturerI@@QEAA@PEAVQObject@@@Z) 已经在 CapturerI.obj 中定义
1>CaptureI.lib(CaptureI.dll) : error LNK2005: "public: virtual __cdecl CapturerI::~CapturerI(void)" (??1CapturerI@@UEAA@XZ) 已经在 CapturerI.obj 中定义
1> 正在创建库 ..\build\Service.lib 和对象 ..\build\Service.exp
1>..\build\Service.exe : fatal error LNK1169: 找到一个或多个多重定义的符号
1>已完成生成项目“Service.vcxproj”的操作 - 失败。
2.原因分析
主要是程序调用内部使用的该.cpp和.h的编译方式
又在链接器的输入种添加了.lib.
只需要删除.lib即可。
网友评论