https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119627
Jonathan Wakely <redi at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |INVALID Status|UNCONFIRMED |RESOLVED --- Comment #3 from Jonathan Wakely <redi at gcc dot gnu.org> --- Yes, your compilers are not compatible. One has static const _Lock_policy __default_lock_policy = _S_atomic; and the other has: static const _Lock_policy __default_lock_policy = _S_mutex; That means they are not ABI-compatible. And it explains why the __shared_ptr<T, _S_atomic> symbol cannot be found on the rpi, because the libstdc++.so.6 on the rpi doesn't have that symbol, because it's incompatible with the cross-compiler.