|
From: Drew D. <dau...@um...> - 2003-05-07 16:07:06
|
Hi I have successfully compiled log4cpp release 0.3.4b with MS Visual
Studio 6.0 and get the following linker errors when I try to include the
library in my project:
Linking...
msvcprtd.lib(MSVCP60D.dll) : error LNK2005: "public: __thiscall
std::basic_string<char,struct std::char_traits<char>,class
std::allocator<char> >::~basic_string<char,struct
std::char_traits<char>,class std::allocator<char> >(void)" (??1?$basic_strin
g@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ) already defined
in apidemoDlg.obj
msvcprtd.lib(MSVCP60D.dll) : error LNK2005: "public: __thiscall
std::basic_string<char,struct std::char_traits<char>,class
std::allocator<char> >::basic_string<char,struct
std::char_traits<char>,class std::allocator<char> >(char const *,class
basic_
string<char,struct std::char_traits<char>,class std::allocator<char>
>::allocator<char> const &)"
(??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBDABV?$allocator@D@1@@Z)
already defined in apidemoDlg.obj
msvcprtd.lib(MSVCP60D.dll) : error LNK2005: "public: __thiscall
std::basic_string<char,struct std::char_traits<char>,class
std::allocator<char> >::basic_string<char,struct
std::char_traits<char>,class std::allocator<char> >(class
basic_string<char,s
truct std::char_traits<char>,class std::allocator<char>
>::basic_string<char,struct std::char_traits<char>,class
std::allocator<char> > const &)"
(??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@ABV01@@Z)
already defined in libcp
mtd.lib(string.obj)
msvcprtd.lib(MSVCP60D.dll) : error LNK2005: "public: __thiscall
std::logic_error::logic_error(class
logic_error::basic_string<char,struct std::char_traits<char>,class
std::allocator<char> > const &)"
(??0logic_error@std@@QAE@ABV?$basic_string@DU?$ch
ar_traits@D@std@@V?$allocator@D@2@@1@@Z) already defined in
libcpmtd.lib(string.obj)
msvcprtd.lib(MSVCP60D.dll) : error LNK2005: "public: virtual __thiscall
std::logic_error::~logic_error(void)" (??1logic_error@std@@UAE@XZ)
already defined in libcpmtd.lib(string.obj)
msvcprtd.lib(MSVCP60D.dll) : error LNK2005: "public: __thiscall
std::logic_error::logic_error(class logic_error::logic_error const &)"
(??0logic_error@std@@QAE@ABV01@@Z) already defined in
libcpmtd.lib(string.obj)
msvcprtd.lib(MSVCP60D.dll) : error LNK2005: "public: char const *
__thiscall std::basic_string<char,struct std::char_traits<char>,class
std::allocator<char> >::c_str(void)const "
(?c_str@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@Q
BEPBDXZ) already defined in libcpmtd.lib(string.obj)
MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: __vsnprintf already defined in
libcmtd.lib(vsnprint.obj)
MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _strtol already defined in
libcmtd.lib(strtol.obj)
MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: _sprintf already defined in
libcmtd.lib(sprintf.obj)
MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: __close already defined in
libcmtd.lib(close.obj)
MSVCRTD.lib(MSVCRTD.dll) : error LNK2005: __write already defined in
libcmtd.lib(write.obj)
msvcprtd.lib(MSVCP60D.dll) : warning LNK4006: "public: __thiscall
std::basic_string<char,struct std::char_traits<char>,class
std::allocator<char> >::~basic_string<char,struct
std::char_traits<char>,class std::allocator<char> >(void)" (??1?$basic_str
ing@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@XZ) already
defined in apidemoDlg.obj; second definition ignored
msvcprtd.lib(MSVCP60D.dll) : warning LNK4006: "public: __thiscall
std::basic_string<char,struct std::char_traits<char>,class
std::allocator<char> >::basic_string<char,struct
std::char_traits<char>,class std::allocator<char> >(char const *,class basi
c_string<char,struct std::char_traits<char>,class std::allocator<char>
>::allocator<char> const &)"
(??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@PBDABV?$allocator@D@1@@Z)
already defined in apidemoDlg.obj; second definition i
gnored
msvcprtd.lib(MSVCP60D.dll) : warning LNK4006: "public: __thiscall
std::basic_string<char,struct std::char_traits<char>,class
std::allocator<char> >::basic_string<char,struct
std::char_traits<char>,class std::allocator<char> >(class basic_string<char
,struct std::char_traits<char>,class std::allocator<char>
>::basic_string<char,struct std::char_traits<char>,class
std::allocator<char> > const &)"
(??0?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@QAE@ABV01@@Z)
already defined in lib
cpmtd.lib(string.obj); second definition ignored
msvcprtd.lib(MSVCP60D.dll) : warning LNK4006: "public: __thiscall
std::logic_error::logic_error(class
logic_error::basic_string<char,struct std::char_traits<char>,class
std::allocator<char> > const &)"
(??0logic_error@std@@QAE@ABV?$basic_string@DU?$
char_traits@D@std@@V?$allocator@D@2@@1@@Z) already defined in
libcpmtd.lib(string.obj); second definition ignored
msvcprtd.lib(MSVCP60D.dll) : warning LNK4006: "public: virtual
__thiscall std::logic_error::~logic_error(void)"
(??1logic_error@std@@UAE@XZ) already defined in
libcpmtd.lib(string.obj); second definition ignored
msvcprtd.lib(MSVCP60D.dll) : warning LNK4006: "public: __thiscall
std::logic_error::logic_error(class logic_error::logic_error const &)"
(??0logic_error@std@@QAE@ABV01@@Z) already defined in
libcpmtd.lib(string.obj); second definition ignored
msvcprtd.lib(MSVCP60D.dll) : warning LNK4006: "public: char const *
__thiscall std::basic_string<char,struct std::char_traits<char>,class
std::allocator<char> >::c_str(void)const "
(?c_str@?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@
@QBEPBDXZ) already defined in libcpmtd.lib(string.obj); second
definition ignored
MSVCRTD.lib(MSVCRTD.dll) : warning LNK4006: __vsnprintf already defined
in libcmtd.lib(vsnprint.obj); second definition ignored
MSVCRTD.lib(MSVCRTD.dll) : warning LNK4006: _strtol already defined in
libcmtd.lib(strtol.obj); second definition ignored
MSVCRTD.lib(MSVCRTD.dll) : warning LNK4006: _sprintf already defined in
libcmtd.lib(sprintf.obj); second definition ignored
MSVCRTD.lib(MSVCRTD.dll) : warning LNK4006: __close already defined in
libcmtd.lib(close.obj); second definition ignored
MSVCRTD.lib(MSVCRTD.dll) : warning LNK4006: __write already defined in
libcmtd.lib(write.obj); second definition ignored
Creating library Debug/apidemo.lib and object Debug/apidemo.exp
LINK : warning LNK4098: defaultlib "MSVCRTD" conflicts with use of other
libs; use /NODEFAULTLIB:library
Debug/apidemo.exe : fatal error LNK1169: one or more multiply defined
symbols found
Error executing link.exe.
apidemo.exe - 13 error(s), 13 warning(s)
Am I missing something? Trying to exclude any of the libraries
identified as containing duplicate symbols (notably the MSVCRTD library)
only results in unresolved symbol errors.
-drew
|