This is more of a note to myself, since it’s an error I keep bumping into. When compiling manually using gcc (or g++), you should pass all the libraries you’re compiling against at the end of the argument list. For example:
g++ -Wall -lboost_thread my_file.cpp
will result in an error like:
undefined reference to `boost::thread::join()'
undefined reference to `boost::thread::~thread()'
while
g++ -Wall vortex5_brute.cpp -lboost_thread
works fine.