[ quantlib-Bugs-1143732 ] VC6 Compliation Error

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[ quantlib-Bugs-1143732 ] VC6 Compliation Error

SourceForge.net
Bugs item #1143732, was opened at 2005-02-18 13:01
Message generated for change (Comment added) made by nando
You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=112740&aid=1143732&group_id=12740

Category: None
Group: None
>Status: Closed
Resolution: None
Priority: 5
Submitted By: Chi-Wai C Lee (chiwai_lee)
Assigned to: Nobody/Anonymous (nobody)
Summary: VC6 Compliation Error

Initial Comment:
Hi there,

I am new to QuantLib 0.3.7 which now requires boost.  I
tried to complie the testsuite files under MS VC++ 6.0
and got the following errors.  Can anybody tell me what
have I done wrong?

--------------------Configuration: testsuite - Win32
Release--------------------
Linking...
msvcprt.lib(MSVCP60.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_string@
DU?$char_traits@D@std@@V?
$allocator@D@2@@std@@QAE@XZ) already defined in
americanoption.obj
msvcprt.lib(MSVCP60.dll) : error LNK2005: "private: bool
__thiscall std::basic_string<char,struct
std::char_traits<char>,class std::allocator<char>
>::_Grow(unsigned int,bool)" (?_Grow@?
$basic_string@DU?$char_traits@D@std@@V?
$allocator@D@2@@std@@AAE
_NI_N@Z) already defined in americanoption.obj
msvcprt.lib(MSVCP60.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_st
ring<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
americanoption.obj
msvcprt.lib(MSVCP60.dll) : error LNK2005: "public: class
std::basic_string<char,struct
std::char_traits<char>,class std::allocator<char> > &
__thiscall std::basic_string<char,struct
std::char_traits<char>,class std::allocator<char>
>::assign(char co
nst *,unsigned int)" (?assign@?$basic_string@DU?
$char_traits@D@std@@V?
$allocator@D@2@@std@@QAEAAV12@PBDI@Z) already
defined in americanoption.obj
msvcprt.lib(MSVCP60.dll) : error LNK2005: "private: void
__thiscall std::basic_string<char,struct
std::char_traits<char>,class std::allocator<char>
>::_Tidy(bool)" (?_Tidy@?$basic_string@DU?
$char_traits@D@std@@V?
$allocator@D@2@@std@@AAEX_N@Z) alread
y defined in americanoption.obj
msvcprt.lib(MSVCP60.dll) : error LNK2005: "public: class
std::basic_string<char,struct
std::char_traits<char>,class std::allocator<char> > &
__thiscall std::basic_string<char,struct
std::char_traits<char>,class std::allocator<char>
>::assign(class s
td::basic_string<char,struct
std::char_traits<char>,class std::allocator<char> >
const &,unsigned int,unsigned int)" (?assign@?
$basic_string@DU?$char_traits@D@std@@V?
$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z)
already defined in americanoption.obj
msvcprt.lib(MSVCP60.dll) : error LNK2005: "public:
__thiscall std::ios_base::Init::Init(void)" (??
0Init@ios_base@std@@QAE@XZ) already defined in
libcpmt.lib(iostream.obj)
msvcprt.lib(MSVCP60.dll) : error LNK2005: "public:
__thiscall std::ios_base::Init::~Init(void)" (??
1Init@ios_base@std@@QAE@XZ) already defined in
libcpmt.lib(iostream.obj)
msvcprt.lib(MSVCP60.dll) : error LNK2005: "public:
__thiscall std::_Winit::_Winit(void)" (??
0_Winit@std@@QAE@XZ) already defined in libcpmt.lib
(wiostrea.obj)
msvcprt.lib(MSVCP60.dll) : error LNK2005: "public:
__thiscall std::_Winit::~_Winit(void)" (??
1_Winit@std@@QAE@XZ) already defined in libcpmt.lib
(wiostrea.obj)
msvcprt.lib(MSVCP60.dll) : error LNK2005: "private: void
__thiscall std::basic_string<char,struct
std::char_traits<char>,class std::allocator<char>
>::_Eos(unsigned int)" (?_Eos@?$basic_string@DU?
$char_traits@D@std@@V?
$allocator@D@2@@std@@AAEXI@Z) a
lready defined in americanoption.obj
msvcprt.lib(MSVCP60.dll) : error LNK2005: "private: void
__thiscall std::basic_string<char,struct
std::char_traits<char>,class std::allocator<char>
>::_Copy(unsigned int)" (?_Copy@?$basic_string@DU?
$char_traits@D@std@@V?
$allocator@D@2@@std@@AAEXI@Z)
 already defined in americanoption.obj
msvcprt.lib(MSVCP60.dll) : error LNK2005: "void __cdecl
std::_Xlen(void)" (?_Xlen@std@@YAXXZ) already
defined in libcpmt.lib(string.obj)
msvcprt.lib(MSVCP60.dll) : error LNK2005: "public:
unsigned int __thiscall std::basic_string<char,struct
std::char_traits<char>,class std::allocator<char>
>::max_size(void)const " (?max_size@?
$basic_string@DU?$char_traits@D@std@@V?
$allocator@D@2@@st
d@@QBEIXZ) already defined in americanoption.obj
msvcprt.lib(MSVCP60.dll) : error LNK2005: "public: class
std::basic_string<char,struct
std::char_traits<char>,class std::allocator<char> > &
__thiscall std::basic_string<char,struct
std::char_traits<char>,class std::allocator<char>
>::append(class s
td::basic_string<char,struct
std::char_traits<char>,class std::allocator<char> >
const &,unsigned int,unsigned int)" (?append@?
$basic_string@DU?$char_traits@D@std@@V?
$allocator@D@2@@std@@QAEAAV12@ABV12@II@Z)
already defined in matrices.obj
msvcprt.lib(MSVCP60.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,str
uct 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 libboos
t_unit_test_framework-vc6-mt-s-1_32.lib
(unit_test_log.obj)
msvcprt.lib(MSVCP60.dll) : error LNK2005: "public: class
std::basic_string<char,struct
std::char_traits<char>,class std::allocator<char> >  
__thiscall std::basic_string<char,struct
std::char_traits<char>,class std::allocator<char>
>::substr(unsigned
 int,unsigned int)const " (?substr@?$basic_string@DU?
$char_traits@D@std@@V?
$allocator@D@2@@std@@QBE?AV12@II@Z) already
defined in libboost_unit_test_framework-vc6-mt-s-
1_32.lib(test_tools.obj)
msvcprt.lib(MSVCP60.dll) : error LNK2005: "public: void
__thiscall std::basic_ostringstream<char,struct
std::char_traits<char>,class std::allocator<char>
>::`vbase destructor'(void)" (??_D?
$basic_ostringstream@DU?$char_traits@D@std@@V?
$allocator@D@2
@@std@@QAEXXZ) already defined in americanoption.obj
msvcprt.lib(MSVCP60.dll) : error LNK2005: "public: virtual
__thiscall std::basic_ostream<char,struct
std::char_traits<char> >::~basic_ostream<char,struct
std::char_traits<char> >(void)" (??1?
$basic_ostream@DU?
$char_traits@D@std@@@std@@UAE@XZ) alread
y defined in americanoption.obj
msvcprt.lib(MSVCP60.dll) : error LNK2005: "public: virtual
__thiscall std::basic_ios<char,struct
std::char_traits<char> >::~basic_ios<char,struct
std::char_traits<char> >(void)" (??1?$basic_ios@DU?
$char_traits@D@std@@@std@@UAE@XZ) already
defined in
 americanoption.obj
msvcprt.lib(MSVCP60.dll) : error LNK2005: "public: virtual
__thiscall std::ios_base::~ios_base(void)" (??
1ios_base@std@@UAE@XZ) already defined in libcpmt.lib
(ios.obj)
msvcprt.lib(MSVCP60.dll) : error LNK2005: "public: virtual
__thiscall std::basic_streambuf<char,struct
std::char_traits<char> >::~basic_streambuf<char,struct
std::char_traits<char> >(void)" (??1?
$basic_streambuf@DU?
$char_traits@D@std@@@std@@UAE@XZ)
already defined in americanoption.obj
msvcprt.lib(MSVCP60.dll) : error LNK2005: "protected:
void __thiscall std::basic_stringbuf<char,struct
std::char_traits<char>,class std::allocator<char>
>::_Tidy(void)" (?_Tidy@?$basic_stringbuf@DU?
$char_traits@D@std@@V?
$allocator@D@2@@std@@IAEXXZ)
already defined in europeanoption.obj
msvcprt.lib(MSVCP60.dll) : error LNK2005: "public: class
std::basic_string<char,struct
std::char_traits<char>,class std::allocator<char> >  
__thiscall std::basic_ostringstream<char,struct
std::char_traits<char>,class std::allocator<char> >::str
(void
)const " (?str@?$basic_ostringstream@DU?
$char_traits@D@std@@V?
$allocator@D@2@@std@@QBE?AV?$basic_string@DU?
$char_traits@D@std@@V?$allocator@D@2@@2@XZ)
already defined in libboost_unit_test_framework-vc6-mt-
s-1_32.lib(test_tools.obj)
msvcprt.lib(MSVCP60.dll) : error LNK2005: "class
std::basic_ostream<char,struct std::char_traits<char>
> & __cdecl std::operator<<(class
std::basic_ostream<char,struct std::char_traits<char>
> &,char const *)" (??6std@@YAAAV?
$basic_ostream@DU?$char_
traits@D@std@@@0@AAV10@PBD@Z) already defined
in americanoption.obj
msvcprt.lib(MSVCP60.dll) : error LNK2005: "protected:
void __thiscall std::basic_stringbuf<char,struct
std::char_traits<char>,class std::allocator<char>
>::_Init(char const *,unsigned int,int)" (?_Init@?
$basic_stringbuf@DU?$char_traits@D@std@@V?$all
ocator@D@2@@std@@IAEXPBDIH@Z) already defined in
americanoption.obj
msvcprt.lib(MSVCP60.dll) : error LNK2005: "private: int
__thiscall std::basic_stringbuf<char,struct
std::char_traits<char>,class std::allocator<char>
>::_Mode(int)" (?_Mode@?$basic_stringbuf@DU?
$char_traits@D@std@@V?
$allocator@D@2@@std@@AAEHH@Z) alr
eady defined in asianoptions.obj
msvcprt.lib(MSVCP60.dll) : error LNK2005: "protected:
__thiscall std::basic_streambuf<char,struct
std::char_traits<char> >::basic_streambuf<char,struct
std::char_traits<char> >(void)" (??0?
$basic_streambuf@DU?
$char_traits@D@std@@@std@@IAE@XZ) alread
y defined in asianoptions.obj
msvcprt.lib(MSVCP60.dll) : error LNK2005: "public:
__thiscall std::basic_ostream<char,struct
std::char_traits<char> >::basic_ostream<char,struct
std::char_traits<char> >(class
basic_ostream<char,struct std::char_traits<char>
>::basic_streambuf<char,
struct std::char_traits<char> > *,bool,bool)" (??0?
$basic_ostream@DU?
$char_traits@D@std@@@std@@QAE@PAV?
$basic_streambuf@DU?
$char_traits@D@std@@@1@_N1@Z) already defined in
cliquetoption.obj
msvcprt.lib(MSVCP60.dll) : error LNK2005: "public:
__thiscall std::_Lockit::~_Lockit(void)" (??
1_Lockit@std@@QAE@XZ) already defined in libcpmt.lib
(xlock.obj)
msvcprt.lib(MSVCP60.dll) : error LNK2005: "public:
__thiscall std::_Lockit::_Lockit(void)" (??
0_Lockit@std@@QAE@XZ) already defined in libcpmt.lib
(xlock.obj)
msvcprt.lib(MSVCP60.dll) : error LNK2005: "private: void
__thiscall std::basic_string<char,struct
std::char_traits<char>,class std::allocator<char>
>::_Split(void)" (?_Split@?$basic_string@DU?
$char_traits@D@std@@V?
$allocator@D@2@@std@@AAEXXZ) alread
y defined in americanoption.obj
msvcprt.lib(MSVCP60.dll) : error LNK2005: "void __cdecl
std::_Xran(void)" (?_Xran@std@@YAXXZ) already
defined in libcpmt.lib(string.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: "public: virtual
__thiscall exception::~exception(void)" (??
1exception@@UAE@XZ) already defined in LIBCMT.lib
(stdexcpt.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: "public:
__thiscall exception::exception(class exception const
&)" (??0exception@@QAE@ABV0@@Z) already defined in
LIBCMT.lib(stdexcpt.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: "public: int
__thiscall type_info::operator==(class type_info const &)
const " (??8type_info@@QBEHABV0@@Z) already
defined in LIBCMT.lib(typinfo.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _sprintf
already defined in LIBCMT.lib(sprintf.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _tolower
already defined in LIBCMT.lib(tolower.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _toupper
already defined in LIBCMT.lib(toupper.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: "public:
__thiscall exception::exception(char const * const &)"
(??0exception@@QAE@ABQBD@Z) already defined in
LIBCMT.lib(stdexcpt.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: "public:
__thiscall exception::exception(void)" (??
0exception@@QAE@XZ) already defined in LIBCMT.lib
(stdexcpt.obj)
MSVCRT.lib(MSVCRT.dll) : error LNK2005: _memmove
already defined in LIBCMT.lib(memmove.obj)
libcpmt.lib(locale.obj) : error LNK2005: "public: class
std::locale & __thiscall std::locale::_Addfac(class
std::locale::facet *,unsigned int,unsigned int)" (?
_Addfac@locale@std@@QAEAAV12@PAVfacet@12@II@Z
) already defined in msvcprt.lib(MSVCP60.dll)
libcpmt.lib(locale.obj) : error LNK2005: "public: __thiscall
std::_Locinfo::_Locinfo(char const *)" (??
0_Locinfo@std@@QAE@PBD@Z) already defined in
msvcprt.lib(MSVCP60.dll)
libcpmt.lib(locale.obj) : error LNK2005: "public: __thiscall
std::_Locinfo::~_Locinfo(void)" (??
1_Locinfo@std@@QAE@XZ) already defined in
msvcprt.lib(MSVCP60.dll)
libcpmt.lib(xwctomb.obj) : error LNK2005: __Getcvt
already defined in msvcprt.lib(MSVCP60.dll)
LINK : warning LNK4098: defaultlib "MSVCRT" conflicts
with use of other libs; use /NODEFAULTLIB:library
build\Release/testsuite.exe : fatal error LNK1169: one or
more multiply defined symbols found
Error executing link.exe.

testsuite.exe - 47 error(s), 1 warning(s)


Many thanks.

Regards,

Chi-Wai


----------------------------------------------------------------------

>Comment By: Ferdinando Ametrano (nando)
Date: 2005-02-18 14:09

Message:
Logged In: YES
user_id=34616

you're probably mixing up runtime libraries with static
libraries, something which shouldn't happen if you build
QuantLib and Boost as they are out of the box.

BTW why using 0.3.7 if you're new to QuantLib? just use the
last version available, which is 0.3.8

Try again:
1) get the latest service pack for VC6 (version 5 or 6)
2) upgrade to QuantLib 0.3.8
3) download and build Boost 1.32
4) build QuantLib

please write on the user mailing list about any further problem.

thank you

ciao -- Nando

----------------------------------------------------------------------

You can respond by visiting:
https://sourceforge.net/tracker/?func=detail&atid=112740&aid=1143732&group_id=12740