Boost logo

Boost :

From: simon.sebright_at_[hidden]
Date: 2007-01-04 08:47:45


Hi,

I have built the regex library as per instructions, using a command
prompt set up by Visual Studio. When I come to build my project using
the library, it automaticaly pulls in the regex lib file, but I get
multiple defined symbols from the linker:

Linking...
libboost_regex-vc80-mt-gd-1_33_1.lib(usinstances.obj) : error LNK2005:
"public: static unsigned int __cdecl std::char_traits<unsigned
short>::length(unsigned short const *)"
(?length@?$char_traits_at_G@std@@SAIPBG_at_Z) already defined in
msvcprtd.lib(MSVCP80D.dll)
libboost_regex-vc80-mt-gd-1_33_1.lib(usinstances.obj) : error LNK2005:
"public: __thiscall std::allocator<unsigned short>::allocator<unsigned
short>(void)" (??0?$allocator_at_G@std@@QAE_at_XZ) already defined in
msvcprtd.lib(MSVCP80D.dll)

My app is built with wchar_t as unsigned short, and with UNICODE and
_UNICODE defined, so I updated the makefile for this and rebuilt, but I
just get the same thing.

I can't even see how usinstances.cpp or any other file defines these
things, and searching boost and the web reveals nothing. Any ideas,
anyone?

Thanks,

Simon


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk