Skip to content

[firebase_core]: Windows build fails with "unresolved external symbol" after upgrade to Firebase Core 3.13.0 #17270

@lukemmtt

Description

@lukemmtt

Update: I suspect this issue could be related to the dependency bump introduced last week in Firebase Core 3.13.0, listed in the changelog here:


Is there an existing issue for this?

  • I have searched the existing issues.

Which plugins are affected?

firebase_core, cloud_firestore, firebase_auth

Which platforms are affected?

Windows

Description

After upgrading cloud_firestore from version 5.6.5 to 5.6.6, my Windows build is failing in CI (Codemagic) with multiple unresolved external symbol errors, including:

  • __std_find_end_1

  • _Cnd_timedwait_for_unchecked

  • __std_min_8i

  • __std_search_1

  • __std_find_first_of_trivial_1

  • __std_remove_8

  • __std_find_last_of_pos_vectorized

  • Before the upgrade, the build completed successfully, both in my local environment and in CI.

  • After upgrading, the build continues to complete successfully on my local machine; it only fails in CI.

  • Comments on unrelated-but-similar issues here in GitHub (like this) suggest that pinning a specific Windows SDK version might be a workaround.

    • Local environment (which does not have this issue)
      • Windows 11 ARM
      • Windows SDK version 10.0.26100
    • CI Environment (Codemagic, which exhibits the issue)
      • Windows 11 x64
      • Windows SDK version 10.0.22621

Reverting to Firebase Core 3.12.1 resolves the CI build issues.

Reproducing the issue

  1. Upgrade cloud_firestore from 5.6.5 to 5.6.6
  2. Attempt to build the Windows version of the app
  3. Build fails with the above linker errors

Firebase Core version

3.13.0

Flutter Version

3.29.2

Relevant Log Output

firebase_firestore.lib(f188d8a14517388912105d506d8c4564_absl_string_view.dir_Release_string_view.obj) : error LNK2019: unresolved external symbol __std_find_end_1 referenced in function "char const * __cdecl std::_Find_end_vectorized<char const ,char const >(char const * const,char const * const,char const * const,unsigned __int64)" (??$_Find_end_vectorized@$$CBD$$CBD@std@@YAPEBDQEBD00_K@Z) [C:\Users\builder\clone\app\build\windows\x64\runner\app.vcxproj]
firebase_firestore.lib(1fe95d6838d9909cdf909015eeba18ea_re2.dir_Release_stringpiece.obj) : error LNK2001: unresolved external symbol __std_find_end_1 [C:\Users\builder\clone\app\build\windows\x64\runner\app.vcxproj]
firebase_firestore.lib(ec49100c7e8ab9d550bace2974e79db6_firestore_util.dir_Release_schedule.obj) : error LNK2019: unresolved external symbol _Cnd_timedwait_for_unchecked referenced in function "public: class firebase::firestore::util::Task * __cdecl firebase::firestore::util::Schedule::PopBlocking(void)" (?PopBlocking@Schedule@util@firestore@firebase@@QEAAPEAVTask@234@XZ) [C:\Users\builder\clone\app\build\windows\x64\runner\app.vcxproj]
firebase_firestore.lib(060e08416dfaa8337f6db6660c103cb2_firestore_core.dir_Release_grpc_completion.obj) : error LNK2001: unresolved external symbol _Cnd_timedwait_for_unchecked [C:\Users\builder\clone\app\build\windows\x64\runner\app.vcxproj]
firebase_firestore.lib(764c577c30021320e8aabcd234c9fd5e_grpc.dir_Release_writing.obj) : error LNK2019: unresolved external symbol __std_min_8i referenced in function "auto __cdecl std::_Min_vectorized<__int64 const >(__int64 const * const,__int64 const * const)" (??$_Min_vectorized@$$CB_J@std@@YA?A_PQEB_J0@Z) [C:\Users\builder\clone\app\build\windows\x64\runner\app.vcxproj]
firebase_firestore.lib(1fe95d6838d9909cdf909015eeba18ea_re2.dir_Release_stringpiece.obj) : error LNK2019: unresolved external symbol __std_search_1 referenced in function "char const * __cdecl std::_Search_vectorized<char const ,char const >(char const * const,char const * const,char const * const,unsigned __int64)" (??$_Search_vectorized@$$CBD$$CBD@std@@YAPEBDQEBD00_K@Z) [C:\Users\builder\clone\app\build\windows\x64\runner\app.vcxproj]
firebase_auth.lib(d48c2d5c2ee6ee6849b2a8e761eb596c_firebase_auth.dir_Release_error_codes.obj) : error LNK2001: unresolved external symbol __std_search_1 [C:\Users\builder\clone\app\build\windows\x64\runner\app.vcxproj]
firebase_app.lib(9df1b499e9d93fa7bea97ae713d33ce7_flatbuffers.dir_Release_idl_parser.obj) : error LNK2019: unresolved external symbol __std_find_first_of_trivial_1 referenced in function "char const * __cdecl std::_Find_first_of_vectorized<char const ,char const >(char const * const,char const * const,char const * const,char const * const)" (??$_Find_first_of_vectorized@$$CBD$$CBD@std@@YAPEBDQEBD000@Z) [C:\Users\builder\clone\app\build\windows\x64\runner\app.vcxproj]
firebase_app.lib(9df1b499e9d93fa7bea97ae713d33ce7_flatbuffers.dir_Release_idl_parser.obj) : error LNK2019: unresolved external symbol __std_remove_8 referenced in function "struct f_b_flatbuffers::StructDef * * __cdecl std::_Remove_vectorized<struct f_b_flatbuffers::StructDef *,struct f_b_flatbuffers::StructDef *>(struct f_b_flatbuffers::StructDef * * const,struct f_b_flatbuffers::StructDef * * const,struct f_b_flatbuffers::StructDef * const)" (??$_Remove_vectorized@PEAUStructDef@f_b_flatbuffers@@PEAU12@@std@@YAPEAPEAUStructDef@f_b_flatbuffers@@QEAPEAU12@0QEAU12@@Z) [C:\Users\builder\clone\app\build\windows\x64\runner\app.vcxproj]
firebase_app.lib(9df1b499e9d93fa7bea97ae713d33ce7_flatbuffers.dir_Release_util.obj) : error LNK2019: unresolved external symbol __std_find_last_of_trivial_pos_1 referenced in function "unsigned __int64 __cdecl std::_Find_last_of_pos_vectorized<char,char>(char const * const,unsigned __int64,char const * const,unsigned __int64)" (??$_Find_last_of_pos_vectorized@DD@std@@YA_KQEBD_K01@Z)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Needs AttentionThis issue needs maintainer attention.platform: windowsIssues / PRs which are specifically for Windows.plugin: coretype: bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions