Well, that's still far better than not knowing anything at all, so thanks a lot for your help!
Maybe something related with threading...
It is possible that BOOST_HAS_THREADS is being set for the library build and not for the project build, or vice versa. The thread autodetection logic is pretty complicated for gcc; maybe the fact that you're cross-compiling is confusing it.
I saw somewhere BOOST_SP_DISABLE_THREADS
Do you think it might help? If yes, is that something to bet set both for boost build AND project build
Yes, it should be set for both. This should take care of the shared_ptr-related issues. In principle, it might be better if you can solve the BOOST_HAS_THREADS mismatch since it has the potential to cause you more trouble in other libraries. If you don't need threads, you may try rebuilding (both Boost and the project) with BOOST_DISABLE_THREADS defined.