GCC Usage Quirks

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.