自己生成的lib库在使用中产生重定义错误,是什么原因呢?
rbird 2005-10-28 11:20:19 我自己生成的win32静态lib库在使用中产生重定义错误,是什么原因呢?
我自己测试了一下在win32项目和mfc项目下使用都容易产生重定义错误,
特别是使用2个或以上我自定义库,更容易发生。
发生的错误提示如下(很多类似):
LIBC.lib(crt0dat.obj) : error LNK2005: _exit 已经在 msvcrtd.lib(MSVCR71D.dll) 中定义
msvcprtd.lib(MSVCP71D.dll) : error LNK2005: "public: class std::locale __thiscall std::ios_base::getloc(void)const " (?getloc@ios_base@std@@QBE?AVlocale@2@XZ) 已经在 DebugOut.lib(DebugOutput.obj) 中定义
请问是什么原因呢?
库我使用vc7里win32向导里的静态库生成后,将类加入库项目。库文件编译通过。
使用是win32和mfc都出现错误。