Obtendo referência indefinida para std :: thread :: _ M_start_thread

Estou criando um aplicativo que usa uma biblioteca de terceiros (Box2D-MT) que eu construo a partir de fontes. Ao vincular, recebo este erro de referência indefinido:

b2Threading.cpp:(.text._ZNSt6threadC2IM12b2ThreadPoolFviEJPS1_iEEEOT_DpOT0_[_ZNSt6threadC5IM12b2ThreadPoolFviEJPS1_iEEEOT_DpOT0_]+0xa4): 
undefined reference to 'std::thread::_M_start_thread(std::shared_ptr<std::thread::_Impl_base>, void (*)())'

Estou construindo com g ++ e vinculo com

-lBox2D -lpthread -lrt -ldl -lstdc++

Além disso, estou compilando com

-std=c++11

olhando para libstdc ++. a Eu posso ver um símbolo semelhante a esse (existe "T"):

nm -C /usr/lib/gcc/x86_64-linux-gnu/4.9.2/libstdc++.a | grep _M_start_thread
0000000000000000 T std::thread::_M_start_thread(std::shared_ptr<std::thread::_Impl_base>)

mas essa sobrecarga não exige um segundo parâmetro.

Pesquisei na Internet algo semelhante, mas ninguém parece ter esse problema antes (em qualquer contexto).

Alguma dica sobre por que recebo esse erro e como resolvê-lo?

questionAnswers(1)

yourAnswerToTheQuestion