
Try
g++ boosttest1.c -o boosttest1 -lboost_thread
If you get more undefined references, try appending -lboost_system and/or -lpthread.
Thanks. The first extra argument solved the compilation issue, but I now get unexpected output (adding the suggested extra arguments does not help this). In particular, it seems that the second thread is not starting up, as I only get output from the main thread. The book says I should get a random interleaving of the lines outputted by each thread. My code:
void fxn1(){ for (int i=0; i<10; ++i){ cout << i << ") Do something in parallel with main method." << endl; boost::this_thread::yield(); }} int main(){ boost::thread t(&fxn1); for (int i=0;i<10; i++){ cout << i << ". Do something in main method." << endl; } return 0; } Thanks so much.