[boost: program options] undefined reference.

Hi I've been trying to use boost program options and heres the linker error i get. Compling with gcc mingW 4.1 . C:/Boost/lib/libboost_program_options-mgw41-1_34.a(convert.o):convert.cpp:(.text+0x8f): undefined reference to `std::codecvt<wchar_t, char, int>::codecvt(unsigned int)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(convert.o):convert.cpp:(.text+0xb7): undefined reference to `std::codecvt<wchar_t, char, int>::~codecvt()' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(convert.o):convert.cpp:(.text+0x1b1): undefined reference to `std::codecvt<wchar_t, char, int>::id' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(convert.o):convert.cpp:(.text+0x2e5): undefined reference to `std::codecvt<wchar_t, char, int>::id' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(convert.o):convert.cpp:(.text$_ZN5boost6detail7convertIwcNS_3_bi6bind_tINSt12codecvt_base6resultENS_4_mfi4cmf7IS5_St23__codecvt_abstract_baseIwciERiPKcSC_RSC_PwSE_RSE_EENS2_5list8INS2_5valueIPKSt7codecvtIwciEEEPFNS_3argILi1EEEvEPFNSO_ILi2EEEvEPFNSO_ILi3EEEvEPFNSO_ILi4EEEvEPFNSO_ILi5EEEvEPFNSO_ILi6EEEvEPFNSO_ILi7EEEvEEEEEEESbIT_St11char_traitsIS1C_ESaIS1C_EERKSbIT0_S1D_IS1H_ESaIS1H_EET1_[std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > boost::detail::convert<wchar_t, char, boost::_bi::bind_t<std::codecvt_base::result, boost::_mfi::cmf7<std::codecvt_base::result, std::__codecvt_abstract_base<wchar_t, char, int>, int&, char const*, char const*, char const*&, wchar_t*, wchar_t*, wchar_t*&>, boost::_bi::list8<boost::_bi::value<std::codecvt<wchar_t, char, int> const*>, boost::arg<1> (*)(), boost::arg<2> (*)(), boost::arg<3> (*)(), boost::arg<4> (*)(), boost::arg<5> (*)(), boost::arg<6> (*)(), boost::arg<7> (*)()> > >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, boost::_bi::bind_t<std::codecvt_base::result, boost::_mfi::cmf7<std::codecvt_base::result, std::__codecvt_abstract_base<wchar_t, char, int>, int&, char const*, char const*, char const*&, wchar_t*, wchar_t*, wchar_t*&>, boost::_bi::list8<boost::_bi::value<std::codecvt<wchar_t, char, int> const*>, boost::arg<1> (*)(), boost::arg<2> (*)(), boost::arg<3> (*)(), boost::arg<4> (*)(), boost::arg<5> (*)(), boost::arg<6> (*)(), boost::arg<7> (*)()> >)]+0x82): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_S_construct(unsigned int, wchar_t, std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(convert.o):convert.cpp:(.text$_ZN5boost6detail7convertIwcNS_3_bi6bind_tINSt12codecvt_base6resultENS_4_mfi4cmf7IS5_St23__codecvt_abstract_baseIwciERiPKcSC_RSC_PwSE_RSE_EENS2_5list8INS2_5valueIPKSt7codecvtIwciEEEPFNS_3argILi1EEEvEPFNSO_ILi2EEEvEPFNSO_ILi3EEEvEPFNSO_ILi4EEEvEPFNSO_ILi5EEEvEPFNSO_ILi6EEEvEPFNSO_ILi7EEEvEEEEEEESbIT_St11char_traitsIS1C_ESaIS1C_EERKSbIT0_S1D_IS1H_ESaIS1H_EET1_[std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > boost::detail::convert<wchar_t, char, boost::_bi::bind_t<std::codecvt_base::result, boost::_mfi::cmf7<std::codecvt_base::result, std::__codecvt_abstract_base<wchar_t, char, int>, int&, char const*, char const*, char const*&, wchar_t*, wchar_t*, wchar_t*&>, boost::_bi::list8<boost::_bi::value<std::codecvt<wchar_t, char, int> const*>, boost::arg<1> (*)(), boost::arg<2> (*)(), boost::arg<3> (*)(), boost::arg<4> (*)(), boost::arg<5> (*)(), boost::arg<6> (*)(), boost::arg<7> (*)()> > >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, boost::_bi::bind_t<std::codecvt_base::result, boost::_mfi::cmf7<std::codecvt_base::result, std::__codecvt_abstract_base<wchar_t, char, int>, int&, char const*, char const*, char const*&, wchar_t*, wchar_t*, wchar_t*&>, boost::_bi::list8<boost::_bi::value<std::codecvt<wchar_t, char, int> const*>, boost::arg<1> (*)(), boost::arg<2> (*)(), boost::arg<3> (*)(), boost::arg<4> (*)(), boost::arg<5> (*)(), boost::arg<6> (*)(), boost::arg<7> (*)()> >)]+0x152): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::replace(unsigned int, unsigned int, wchar_t const*, unsigned int)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(convert.o):convert.cpp:(.text$_ZN5boost6detail7convertIwcNS_3_bi6bind_tINSt12codecvt_base6resultENS_4_mfi4cmf7IS5_St23__codecvt_abstract_baseIwciERiPKcSC_RSC_PwSE_RSE_EENS2_5list8INS2_5valueIPKSt7codecvtIwciEEEPFNS_3argILi1EEEvEPFNSO_ILi2EEEvEPFNSO_ILi3EEEvEPFNSO_ILi4EEEvEPFNSO_ILi5EEEvEPFNSO_ILi6EEEvEPFNSO_ILi7EEEvEEEEEEESbIT_St11char_traitsIS1C_ESaIS1C_EERKSbIT0_S1D_IS1H_ESaIS1H_EET1_[std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > boost::detail::convert<wchar_t, char, boost::_bi::bind_t<std::codecvt_base::result, boost::_mfi::cmf7<std::codecvt_base::result, std::__codecvt_abstract_base<wchar_t, char, int>, int&, char const*, char const*, char const*&, wchar_t*, wchar_t*, wchar_t*&>, boost::_bi::list8<boost::_bi::value<std::codecvt<wchar_t, char, int> const*>, boost::arg<1> (*)(), boost::arg<2> (*)(), boost::arg<3> (*)(), boost::arg<4> (*)(), boost::arg<5> (*)(), boost::arg<6> (*)(), boost::arg<7> (*)()> > >(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, boost::_bi::bind_t<std::codecvt_base::result, boost::_mfi::cmf7<std::codecvt_base::result, std::__codecvt_abstract_base<wchar_t, char, int>, int&, char const*, char const*, char const*&, wchar_t*, wchar_t*, wchar_t*&>, boost::_bi::list8<boost::_bi::value<std::codecvt<wchar_t, char, int> const*>, boost::arg<1> (*)(), boost::arg<2> (*)(), boost::arg<3> (*)(), boost::arg<4> (*)(), boost::arg<5> (*)(), boost::arg<6> (*)(), boost::arg<7> (*)()> >)]+0x424): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t>
::_Rep::_M_destroy(std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x19f): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::_Rep::_M_destroy(std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x28b): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::basic_string(std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x2d2): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::_Rep::_M_destroy(std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x367): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::_Rep::_M_destroy(std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x40b): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::basic_string(std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x44c): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::_Rep::_M_destroy(std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x526): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::_Rep::_M_destroy(std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x57e): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::_Rep::_M_destroy(std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x5ed): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::_Rep::_M_destroy(std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x10bb): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::_Rep::_M_destroy(std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x128f): more undefined references to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::_Rep::_M_destroy(std::allocator<wchar_t> const&)' follow C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x215f): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::basic_string(std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x21c5): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::basic_string(std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x2299): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::basic_string(std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&, unsigned int, unsigned int)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x22cb): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::basic_string(std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x234a): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::_Rep::_M_destroy(std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x2367): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_M_leak_hard()' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x23b3): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_M_leak_hard()' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x23cf): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::_Rep::_M_destroy(std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x23eb): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_M_leak_hard()' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x2406): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_M_leak_hard()' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x24da): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::_Rep::_M_destroy(std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x2519): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::_Rep::_M_destroy(std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x2a4a): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::basic_string(std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x2a8f): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_M_leak_hard()' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x2b07): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_M_leak_hard()' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x2b2b): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::compare(wchar_t const*) const' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x2be6): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::compare(wchar_t const*) const' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x2c02): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::compare(wchar_t const*) const' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x2c1e): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::compare(wchar_t const*) const' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x2c41): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::compare(wchar_t const*) const' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x2c60): more undefined references to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::compare(wchar_t const*) const' follow C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x2ccf): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::_Rep::_M_destroy(std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x2db2): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::compare(wchar_t const*) const' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x2dce): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::compare(wchar_t const*) const' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text+0x2f50): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::_Rep::_M_destroy(std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text$_ZNK5boost3any6holderISbIwSt11char_traitsIwESaIwEEE5cloneEv[boost::any::holder<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > >::clone() const]+0x67): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::basic_string(std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text$_ZN5boost3any6holderISbIwSt11char_traitsIwESaIwEEED0Ev[boost::any::holder<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > >::~holder()]+0x93): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::_Rep::_M_destroy(std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text$_ZN5boost3any6holderISbIwSt11char_traitsIwESaIwEEED1Ev[boost::any::holder<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > >::~holder()]+0x8b): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> ::_Rep::_M_destroy(std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text$_ZNSt6vectorISbIwSt11char_traitsIwESaIwEESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_[std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > ::_M_insert_aux(__gnu_cxx::__normal_iterator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >*, std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > > >, std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)]+0x65): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::basic_string(std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text$_ZNSt6vectorISbIwSt11char_traitsIwESaIwEESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_[std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > ::_M_insert_aux(__gnu_cxx::__normal_iterator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >*, std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > > >, std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)]+0x85): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::basic_string(std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text$_ZNSt6vectorISbIwSt11char_traitsIwESaIwEESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_[std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > ::_M_insert_aux(__gnu_cxx::__normal_iterator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >*, std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > > >, std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)]+0xc2): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::assign(std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text$_ZNSt6vectorISbIwSt11char_traitsIwESaIwEESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_[std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > ::_M_insert_aux(__gnu_cxx::__normal_iterator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >*, std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > > >, std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)]+0xec): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::assign(std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text$_ZNSt6vectorISbIwSt11char_traitsIwESaIwEESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_[std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > ::_M_insert_aux(__gnu_cxx::__normal_iterator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >*, std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > > >, std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)]+0x1d4): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::basic_string(std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text$_ZNSt6vectorISbIwSt11char_traitsIwESaIwEESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_[std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > ::_M_insert_aux(__gnu_cxx::__normal_iterator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >*, std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > > >, std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)]+0x21a): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::basic_string(std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text$_ZNSt6vectorISbIwSt11char_traitsIwESaIwEESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_[std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > ::_M_insert_aux(__gnu_cxx::__normal_iterator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >*, std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > > >, std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)]+0x27d): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::basic_string(std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text$_ZNSt6vectorISbIwSt11char_traitsIwESaIwEESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_[std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > ::_M_insert_aux(__gnu_cxx::__normal_iterator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >*, std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > > >, std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)]+0x302): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_Rep::_M_destroy(std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text$_ZNSt6vectorISbIwSt11char_traitsIwESaIwEESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_[std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > ::_M_insert_aux(__gnu_cxx::__normal_iterator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >*, std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > > >, std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)]+0x35a): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_Rep::_M_destroy(std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text$_ZNSt6vectorISbIwSt11char_traitsIwESaIwEESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_[std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > ::_M_insert_aux(__gnu_cxx::__normal_iterator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >*, std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > > >, std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)]+0x48a): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_Rep::_M_destroy(std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text$_ZNSt6vectorISbIwSt11char_traitsIwESaIwEESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_[std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > ::_M_insert_aux(__gnu_cxx::__normal_iterator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >*, std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > > >, std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)]+0x4fc): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_Rep::_M_destroy(std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text$_ZNSt6vectorISbIwSt11char_traitsIwESaIwEESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_[std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > ::_M_insert_aux(__gnu_cxx::__normal_iterator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >*, std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > > >, std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)]+0x589): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_Rep::_M_destroy(std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text$_ZNSt6vectorISbIwSt11char_traitsIwESaIwEESaIS3_EE13_M_insert_auxEN9__gnu_cxx17__normal_iteratorIPS3_S5_EERKS3_[std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > ::_M_insert_aux(__gnu_cxx::__normal_iterator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >*, std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > > >, std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const&)]+0x627): more undefined references to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_Rep::_M_destroy(std::allocator<wchar_t> const&)' follow C:/Boost/lib/libboost_program_options-mgw41-1_34.a(value_semantic.o):value_semantic.cpp:(.text$_ZN5boost15program_options10validators17get_single_stringIwEERKSbIT_St11char_traitsIS3_ESaIS3_EERKSt6vectorIS7_SaIS7_EEb[std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > const& boost::program_options::validators::get_single_string<wchar_t>(std::vector<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >, std::allocator<std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > > > const&, bool)]+0x19d): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_S_construct(unsigned int, wchar_t, std::allocator<wchar_t> const&)' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(utf8_codecvt_facet.o):utf8_codecvt_facet.cpp:(.text$_ZN5boost15program_options6detail18utf8_codecvt_facetD0Ev[boost::program_options::detail::utf8_codecvt_facet::~utf8_codecvt_facet()]+0x12): undefined reference to `std::codecvt<wchar_t, char, int>::~codecvt()' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(utf8_codecvt_facet.o):utf8_codecvt_facet.cpp:(.text$_ZN5boost15program_options6detail18utf8_codecvt_facetD1Ev[boost::program_options::detail::utf8_codecvt_facet::~utf8_codecvt_facet()]+0xe): undefined reference to `std::codecvt<wchar_t, char, int>::~codecvt()' C:/Boost/lib/libboost_program_options-mgw41-1_34.a(utf8_codecvt_facet.o):utf8_codecvt_facet.cpp:(.rdata$_ZTVN5boost15program_options6detail18utf8_codecvt_facetE[vtable for boost::program_options::detail::utf8_codecvt_facet]+0x24): undefined reference to `std::codecvt<wchar_t, char, int>::do_length(int&, char const*, char const*, unsigned int) const'
collect2: ld returned 1 exit status make: *** [NeuralNetProject.exe] Error 1

chun ping wang wrote:
Hi I've been trying to use boost program options and heres the linker error
Generally, it would be good to indicate what, and how you compile. Otherwise, I might assume that you've typed the following on the command line: $ use boost program options and I don't really know how to debug this further.
i get. Compling with gcc mingW 4.1 .
Hmm, IIRC, mingw has had some issues with wchar_t support -- like missing support for wchar_t, completely. Maybe upgrading to newer mingw will fix this -- I'm not sure. - Volodya

make -f ./lib/OperatingSystemLibBak.mak make[1]: Entering directory `C:/CPW/cs_classes' g++.exe -Wall -D__DEBUG__ -Wall -c ./cs540bak/c++/cppdef/DeadLockAvoid.cpp -o ./lib/DeadLockAvoid.o -I"C:/Boost/include/boost_1_34" -I"C:/Dev-Cpp/lib/gcc/mingw32/4.1.2/include" -I"C:/Dev-Cpp/lib/gcc/mingw32/4.1.2/include/c++/mingw32" -fexceptions -fverbose-asm -fexpensive-optimizations -O3 -pg -g3 g++.exe -Wall -D__DEBUG__ -c ./cs540bak/c++/cppdef/ContainerOperation.cpp -o ./lib/ContainerOperation.o -I"C:/Boost/include/boost_1_34" -I"C:/Dev-Cpp/lib/gcc/mingw32/4.1.2/include" -I"C:/Dev-Cpp/lib/gcc/mingw32/4.1.2/include/c++/mingw32" -fexceptions -fverbose-asm -fexpensive-optimizations -O3 -pg -g3 ar r ./lib/libOperatingSystem.a ./lib/DeadLockAvoid.o ./lib/ContainerOperation.o ranlib ./lib/libOperatingSystem.a rm -f ./lib/DeadLockAvoid.o ./lib/ContainerOperation.o make[1]: Leaving directory `C:/CPW/cs_classes' g++.exe -Wall -D__DEBUG__ -c ./cs540bak/c++/DeadLockAvoidTest.cpp -o ./project/DeadLockAvoidBakTest.o -I"C:/Boost/include/boost_1_34" -I"./Scripts" -ansi -fexceptions -fverbose-asm -fexpensive-optimizations -O3 -pg -g3 g++.exe -Wall -D__DEBUG__ ./project/DeadLockAvoidBakTest.o -o " DeadLockAvoidBakProject.exe" -L"C:/Dev-Cpp/lib" -L"./lib" -L"C:/Boost/lib" -l"boost_filesystem-mgw41-1_34" -l"boost_program_options-mgw41-1_34" -l"OperatingSystem" -lgmon -pg -g3 Heres the make file output. I compile using a make file. On 7/17/07, Vladimir Prus <ghost@cs.msu.su> wrote:
chun ping wang wrote:
Hi I've been trying to use boost program options and heres the linker error
Generally, it would be good to indicate what, and how you compile. Otherwise, I might assume that you've typed the following on the command line:
$ use boost program options
and I don't really know how to debug this further.
i get. Compling with gcc mingW 4.1 .
Hmm, IIRC, mingw has had some issues with wchar_t support -- like missing support for wchar_t, completely. Maybe upgrading to newer mingw will fix this -- I'm not sure.
- Volodya
_______________________________________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/mailman/listinfo.cgi/boost-users
participants (2)
-
chun ping wang
-
Vladimir Prus