   boost::thread build problem
  can somebody please explain to me, how to build the boost::thread on win32 with msvc6? i tried to do "something" with boost jam, but all it does is to dir''s and it''s complaining alot (cannot find something) 
  is it giving you some error messages? ;  i tried the stoopid way i create new win32 static lib project, insert the source files, add MT flag, add include dirs and hit compile...i get a lot of this:warning C4275: non dll-interface class ''std::logic_error'' used as base for dll-interface class ''boost::lock_error''   e:\program files\microsoft visual studio\vc98\include\stdexcept(17) : see declaration of ''logic_error''and a lot of this:LINK : warning LNK4049: locally defined symbol ""public: __thiscall boost::thread_resource_error::thread_resource_error(void)" (??0thread_resource_error@boost@@QAE@XZ)" importederror LNK2001: unresolved external symbol "public: __thiscall boost::thread_resource_error::thread_resource_error(class boost::thread_resource_error const &)" (??0thread_resource_error@boost@@QAE@ABV01@@Z)condition.obj ;  Come on now. Read the error messages and do some digging around on the net.quote:unresolved external symbolSurely you have seen this in your own projects and you know how to fix it. You are referencing something it can''t find. Thats your cue to check the documentation to see that these are not header-only classes. Either add the source files to the project or link the compiled library to it. ;  I had no trouble getting bjam to build the boost::thread dll. What exactly was the problem using that? ;  @antareuswhat can i say, i''m bored @sicranei think that it cannot find the compiler god damn PATH ;  Did you remember to run vcvars32.bat? ;  i deeply apologize for being stupid...i forgot, that winxp cmd.exe is not a nix like shell...running vcvars32 from total commander and than trying to run bjam just doesnt work...damn... ;  ummm...now that boost thread is working, it it expected that i dont understand some things like this: boost::mutex mutex1;class tester{public:tester(){data = 0;}void incrementer(){mutex::scoped_lock lock(mutex1);cout << "data = " << ++data << endl;Sleep(100);}protected:private:int data;};void main(){tester a;thread_group threads;for (int i = 0; i < 10; ++i)threads.create_thread(bind(&tester::incrementer, a));threads.join_all();}it keeps printing "data = 1" and i wonder why?   ;  Is it just my imagination, or did you bind your function objects to a copyof a instead of the actual a object?edit: I mean shouldn't you be using &a in your bind() call instead of just plain a?   [edited by - SiCrane on February 3, 2004 5:52:14 PM]