Hello, I’m using boost ::threads and boost ::signals with Visual C++ 7.0 and I have these damn link errors that I can’t remove:

 

error LNK2019: unresolved external symbol "__declspec(dllimport) public: __thiscall boost::thread::thread(class boost::function0<void,class _STL::allocator<class boost::function_base> > const &)" (__imp_??0thread@boost@@QAE@ABV?$function0@XV?$allocator@Vfunction_base@boost@@@_STL@@@1@@Z)

 

error LNK2019: unresolved external symbol "__declspec(dllimport) public: __thiscall boost::signals::detail::signal_base::signal_base(class boost::function2<bool,class boost::any,class boost::any,class _STL::allocator<class boost::function_base> > const &)" (__imp_??0signal_base@detail@signals@boost@@QAE@ABV?$function2@_NVany@boost@@V12@V?$allocator@Vfunction_base@boost@@@_STL@@@3@@Z

 

error LNK2019: unresolved external symbol "__declspec(dllimport) public: class boost::signals::connection __thiscall boost::signals::detail::signal_base_impl::connect_slot(class boost::any const &,class boost::any const &,class _STL::vector<class boost::signals::trackable const *,class _STL::allocator<class boost::signals::trackable const *> > const &)" (__imp_?connect_slot@signal_base_impl@detail@signals@boost@@QAE?AVconnection@34@ABVany@4@0ABV?$vector@PBVtrackable@signals@boost@@V?$allocator@PBVtrackable@signals@boost@@@_STL@@@_STL@@@Z)

 

error LNK2019: symbole externe non résolu "__declspec(dllimport) public: class _STL::vector<class boost::signals::trackable const *,class _STL::allocator<class boost::signals::trackable const *> > & __thiscall boost::signals::detail::slot_base::get_bound_objects(void)const " (__imp_?get_bound_objects@slot_base@detail@signals@boost@@QBEAAV?$vector@PBVtrackable@signals@boost@@V?$allocator@PBVtrackable@signals@boost@@@_STL@@@_STL@@XZ)

 

I’ve compiled the boost libs with bjam and the vc7 toolset (I’ve tried with msvc and msvc-stlport, since I use STLport and the result is the same). The weird thing is that I call other methods on thread (join() for example) that are properly linked. My project uses the multithreaded DLL runtime librairies. Any idea of what might be happening? When I look into the built DLLs and LIBs with dumpbin, the symbols all seem to be there except that their decorated names don’t start with “__imp_?”. I’m not sure if this is important or not…

 

Any help would be really appreciated!!!!