So I have a Qt project in which I incorporated Firebase C++ using the wrapper here https://github.com/Larpon/QtFirebase. I decided to switch my compiler from GCC (which was working ok) to Clang as Google deprecated the former, but now I am getting these strange errors:
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:555: error: undefined reference to 'std::string::assign(std::string const&)'
/tmpfs/src/gfile/kokoro_appandroid/firebase/app/client/cpp/src/variant.cc:242: error: undefined reference to 'std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()'
/tmpfs/src/gfile/kokoro_appandroid/firebase/app/client/cpp/src/variant.cc:293: error: undefined reference to 'std::string::_Rep::_S_empty_rep_storage'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_tree.h:282: error: undefined reference to 'std::_Rb_tree_increment(std::_Rb_tree_node_base const*)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_tree.h:282: error: undefined reference to 'std::_Rb_tree_increment(std::_Rb_tree_node_base const*)'
/tmpfs/src/gfile/kokoro_appandroid/firebase/app/client/cpp/src/variant.cc:359: error: undefined reference to 'std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:555: error: undefined reference to 'std::string::assign(std::string const&)'
/tmpfs/src/gfile/kokoro_appandroid/firebase/app/client/cpp/src/variant.cc:370: error: undefined reference to 'std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:555: error: undefined reference to 'std::string::assign(std::string const&)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:555: error: undefined reference to 'std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()'
/tmpfs/src/gfile/kokoro_appandroid/firebase/app/client/cpp/src/variant.cc:386: error: undefined reference to 'std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_tree.h:282: error: undefined reference to 'std::_Rb_tree_increment(std::_Rb_tree_node_base const*)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_tree.h:282: error: undefined reference to 'std::_Rb_tree_increment(std::_Rb_tree_node_base const*)'
/tmpfs/src/gfile/kokoro_appandroid/firebase/app/client/cpp/src/include/firebase/app.h:93: error: undefined reference to 'std::basic_string<char, std::char_traits<char>, std::allocator<char> >::~basic_string()'
/tmpfs/src/gfile/kokoro_appandroid/firebase/app/client/cpp/src/app_android.cc:273: error: undefined reference to 'std::string::_Rep::_S_empty_rep_storage'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:555: error: undefined reference to 'std::string::assign(std::string const&)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:1149: error: undefined reference to 'std::string::assign(char const*, unsigned int)'
/tmpfs/src/gfile/kokoro_appandroid/firebase/app/client/cpp/src/include/firebase/app.h:93: error: undefined reference to 'std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&)'
/tmpfs/src/gfile/kokoro_appandroid/firebase/app/client/cpp/src/include/firebase/app.h:93: error: undefined reference to 'std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&)'
/tmpfs/src/gfile/kokoro_appandroid/firebase/app/client/cpp/src/include/firebase/app.h:93: error: undefined reference to 'std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&)'
/tmpfs/src/gfile/kokoro_appandroid/firebase/app/client/cpp/src/include/firebase/app.h:93: error: undefined reference to 'std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:1149: error: undefined reference to 'std::string::assign(char const*, unsigned int)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:1149: error: undefined reference to 'std::string::assign(char const*, unsigned int)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:1149: error: undefined reference to 'std::string::assign(char const*, unsigned int)'
/tmpfs/src/gfile/kokoro_appandroid/firebase/app/client/cpp/src/util_android.cc:843: error: undefined reference to 'std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&)'
/tmpfs/src/gfile/kokoro_appandroid/firebase/app/client/cpp/src/util_android.cc:840: error: undefined reference to 'std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(char const*, std::allocator<char> const&)'
/tmpfs/src/gfile/kokoro_appandroid/firebase/app/client/cpp/src/util_android.cc:847: error: undefined reference to 'std::string::_Rep::_S_empty_rep_storage'
/tmpfs/src/gfile/kokoro_appandroid/firebase/app/client/cpp/src/util_android.cc:797: error: undefined reference to 'std::string::_Rep::_S_empty_rep_storage'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/vector.tcc:69: error: undefined reference to 'std::__throw_length_error(char const*)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/vector.tcc:69: error: undefined reference to 'std::__throw_length_error(char const*)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_list.h:1689: error: undefined reference to 'std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_list.h:1697: error: undefined reference to 'std::__detail::_List_node_base::_M_unhook()'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_list.h:1697: error: undefined reference to 'std::__detail::_List_node_base::_M_unhook()'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:2442: error: undefined reference to 'std::string::append(unsigned int, char)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:2468: error: undefined reference to 'std::string::append(std::string const&)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:1252: error: undefined reference to 'std::string::insert(unsigned int, std::string const&, unsigned int, unsigned int)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:950: error: undefined reference to 'std::string::append(std::string const&)'
/tmpfs/src/gfile/kokoro_appandroid/firebase/app/client/cpp/src/util_android.cc:1635: error: undefined reference to 'std::string::push_back(char)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:1426: error: undefined reference to 'std::string::erase(unsigned int, unsigned int)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_vector.h:1585: error: undefined reference to 'std::__throw_length_error(char const*)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_vector.h:1585: error: undefined reference to 'std::__throw_length_error(char const*)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_tree.h:218: error: undefined reference to 'std::_Rb_tree_decrement(std::_Rb_tree_node_base*)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_tree.h:1175: error: undefined reference to 'std::_Rb_tree_insert_and_rebalance(bool, std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_tree.h:218: error: undefined reference to 'std::_Rb_tree_decrement(std::_Rb_tree_node_base*)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_tree.h:1175: error: undefined reference to 'std::_Rb_tree_insert_and_rebalance(bool, std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_tree.h:218: error: undefined reference to 'std::_Rb_tree_decrement(std::_Rb_tree_node_base*)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_tree.h:203: error: undefined reference to 'std::_Rb_tree_increment(std::_Rb_tree_node_base*)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_tree.h:1726: error: undefined reference to 'std::_Rb_tree_insert_and_rebalance(bool, std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_tree.h:218: error: undefined reference to 'std::_Rb_tree_decrement(std::_Rb_tree_node_base*)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_tree.h:203: error: undefined reference to 'std::_Rb_tree_increment(std::_Rb_tree_node_base*)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_tree.h:1894: error: undefined reference to 'std::_Rb_tree_rebalance_for_erase(std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_tree.h:203: error: undefined reference to 'std::_Rb_tree_increment(std::_Rb_tree_node_base*)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:814: error: undefined reference to 'std::string::_M_mutate(unsigned int, unsigned int, unsigned int)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:1026: error: undefined reference to 'std::string::append(char const*, unsigned int)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:2451: error: undefined reference to 'std::string::append(std::string const&)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:1026: error: undefined reference to 'std::string::append(char const*, unsigned int)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:950: error: undefined reference to 'std::string::append(std::string const&)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_tree.h:203: error: undefined reference to 'std::_Rb_tree_increment(std::_Rb_tree_node_base*)'
/tmpfs/src/gfile/kokoro_appandroid/firebase/app/client/cpp/src/app_common.cc:182: error: undefined reference to 'std::string::substr(unsigned int, unsigned int) const'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:592: error: undefined reference to 'std::string::swap(std::string&)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:814: error: undefined reference to 'std::string::_M_mutate(unsigned int, unsigned int, unsigned int)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/basic_string.h:814: error: undefined reference to 'std::string::_M_mutate(unsigned int, unsigned int, unsigned int)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_tree.h:1726: error: undefined reference to 'std::_Rb_tree_insert_and_rebalance(bool, std::_Rb_tree_node_base*, std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_tree.h:1894: error: undefined reference to 'std::_Rb_tree_rebalance_for_erase(std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_list.h:1697: error: undefined reference to 'std::__detail::_List_node_base::_M_unhook()'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_list.h:1689: error: undefined reference to 'std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_list.h:1697: error: undefined reference to 'std::__detail::_List_node_base::_M_unhook()'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_tree.h:1894: error: undefined reference to 'std::_Rb_tree_rebalance_for_erase(std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/bits/stl_tree.h:1894: error: undefined reference to 'std::_Rb_tree_rebalance_for_erase(std::_Rb_tree_node_base*, std::_Rb_tree_node_base&)'
/opt/android-sdk/current/ndk-bundle/sources/cxx-stl/gnu-libstdc++/4.9/include/functional:2438: error: undefined reference to 'std::__throw_bad_function_call()'
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
ndk{
toolchain = "clang"
moduleName = "example"
stl = "c++_static"
cppFlags.add("-std=c++11")
cppFlags.add("-fexceptions")
cppFlags.add("-frtti")
cppFlags.add("-latomic")
ldFlags.add("-latomic")
}