react-native-mmkv icon indicating copy to clipboard operation
react-native-mmkv copied to clipboard

Cannot build on Android

Open alimoli opened this issue 8 months ago • 6 comments

Issue

Despite the uncountable cleanings (both ./gradlew clean and removal of android/app/build and android/app/.cxx folders), I am still not able to build the project. I have no problems on iOS, but Android ./gradlew asembleDebug returns the following error:

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:buildCMakeDebug[arm64-v8a]'.
> com.android.ide.common.process.ProcessException: ninja: Entering directory `/Users/xxx/WebstormProjects/app/android/app/.cxx/Debug/h5i10r70/arm64-v8a'
  [0/2] Re-checking globbed directories...
  [1/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/MMKV_OSX.cpp.o
  [2/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/CodedInputDataCrypt_OSX.cpp.o
  [3/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/CodedInputData_OSX.cpp.o
  [4/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/MMKVLog.cpp.o
  [5/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/KeyValueHolder.cpp.o
  [6/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/PBUtility.cpp.o
  [7/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/CodedInputData.cpp.o
  [8/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/CodedOutputData.cpp.o
  [9/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/MMKVLog_Android.cpp.o
  [10/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/CodedInputDataCrypt.cpp.o
  [11/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/MiniPBCoder_OSX.cpp.o
  [12/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/MemoryFile_Win32.cpp.o
  [13/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/MMKV_Android.cpp.o
  [14/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/MMKV_IO.cpp.o
  FAILED: RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/MMKV_IO.cpp.o 
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang++ --target=aarch64-none-linux-android29 --sysroot=/Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot  -I/Users/xxx/WebstormProjects/app/node_modules/react-native-mmkv/MMKV/Core -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security   -fno-limit-debug-info  -std=c++20 -fPIC -MD -MT RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/MMKV_IO.cpp.o -MF RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/MMKV_IO.cpp.o.d -o RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/MMKV_IO.cpp.o -c /Users/xxx/WebstormProjects/app/node_modules/react-native-mmkv/MMKV/Core/MMKV_IO.cpp
  /Users/xxx/WebstormProjects/app/node_modules/react-native-mmkv/MMKV/Core/MMKV_IO.cpp:548:32: error: no matching member function for call to 'find'
          auto itr = m_dicCrypt->find(key);
                     ~~~~~~~~~~~~^~~~
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1278:20: note: candidate function not viable: no known conversion from 'MMKV::MMKVKey_t' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolderCrypt, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      iterator       find(const key_type& __k)       {return __table_.find(__k);}
                     ^
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1280:20: note: candidate function not viable: no known conversion from 'MMKV::MMKVKey_t' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolderCrypt, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      const_iterator find(const key_type& __k) const {return __table_.find(__k);}
                     ^
  /Users/xxx/WebstormProjects/app/node_modules/react-native-mmkv/MMKV/Core/MMKV_IO.cpp:556:27: error: no matching member function for call to 'find'
          auto itr = m_dic->find(key);
                     ~~~~~~~^~~~
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1278:20: note: candidate function not viable: no known conversion from 'MMKV::MMKVKey_t' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolder, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      iterator       find(const key_type& __k)       {return __table_.find(__k);}
                     ^
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1280:20: note: candidate function not viable: no known conversion from 'MMKV::MMKVKey_t' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolder, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      const_iterator find(const key_type& __k) const {return __table_.find(__k);}
                     ^
  /Users/xxx/WebstormProjects/app/node_modules/react-native-mmkv/MMKV/Core/MMKV_IO.cpp:599:32: error: no matching member function for call to 'find'
          auto itr = m_dicCrypt->find(key);
                     ~~~~~~~~~~~~^~~~
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1278:20: note: candidate function not viable: no known conversion from 'MMKV::MMKVKey_t' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolderCrypt, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      iterator       find(const key_type& __k)       {return __table_.find(__k);}
                     ^
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1280:20: note: candidate function not viable: no known conversion from 'MMKV::MMKVKey_t' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolderCrypt, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      const_iterator find(const key_type& __k) const {return __table_.find(__k);}
                     ^
  /Users/xxx/WebstormProjects/app/node_modules/react-native-mmkv/MMKV/Core/MMKV_IO.cpp:630:35: error: no matching member function for call to 'find'
                  itr = m_dicCrypt->find(key);
                        ~~~~~~~~~~~~^~~~
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1278:20: note: candidate function not viable: no known conversion from 'MMKV::MMKVKey_t' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolderCrypt, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      iterator       find(const key_type& __k)       {return __table_.find(__k);}
                     ^
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1280:20: note: candidate function not viable: no known conversion from 'MMKV::MMKVKey_t' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolderCrypt, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      const_iterator find(const key_type& __k) const {return __table_.find(__k);}
                     ^
  /Users/xxx/WebstormProjects/app/node_modules/react-native-mmkv/MMKV/Core/MMKV_IO.cpp:664:27: error: no matching member function for call to 'find'
          auto itr = m_dic->find(key);
                     ~~~~~~~^~~~
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1278:20: note: candidate function not viable: no known conversion from 'MMKV::MMKVKey_t' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolder, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      iterator       find(const key_type& __k)       {return __table_.find(__k);}
                     ^
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1280:20: note: candidate function not viable: no known conversion from 'MMKV::MMKVKey_t' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolder, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      const_iterator find(const key_type& __k) const {return __table_.find(__k);}
                     ^
  /Users/xxx/WebstormProjects/app/node_modules/react-native-mmkv/MMKV/Core/MMKV_IO.cpp:714:30: error: no matching member function for call to 'find'
                  itr = m_dic->find(key);
                        ~~~~~~~^~~~
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1278:20: note: candidate function not viable: no known conversion from 'MMKV::MMKVKey_t' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolder, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      iterator       find(const key_type& __k)       {return __table_.find(__k);}
                     ^
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1280:20: note: candidate function not viable: no known conversion from 'MMKV::MMKVKey_t' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolder, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      const_iterator find(const key_type& __k) const {return __table_.find(__k);}
                     ^
  /Users/xxx/WebstormProjects/app/node_modules/react-native-mmkv/MMKV/Core/MMKV_IO.cpp:756:32: error: no matching member function for call to 'find'
          auto itr = m_dicCrypt->find(key);
                     ~~~~~~~~~~~~^~~~
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1278:20: note: candidate function not viable: no known conversion from 'MMKV::MMKVKey_t' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolderCrypt, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      iterator       find(const key_type& __k)       {return __table_.find(__k);}
                     ^
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1280:20: note: candidate function not viable: no known conversion from 'MMKV::MMKVKey_t' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolderCrypt, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      const_iterator find(const key_type& __k) const {return __table_.find(__k);}
                     ^
  /Users/xxx/WebstormProjects/app/node_modules/react-native-mmkv/MMKV/Core/MMKV_IO.cpp:789:27: error: no matching member function for call to 'find'
          auto itr = m_dic->find(key);
                     ~~~~~~~^~~~
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1278:20: note: candidate function not viable: no known conversion from 'MMKV::MMKVKey_t' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolder, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      iterator       find(const key_type& __k)       {return __table_.find(__k);}
                     ^
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1280:20: note: candidate function not viable: no known conversion from 'MMKV::MMKVKey_t' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolder, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      const_iterator find(const key_type& __k) const {return __table_.find(__k);}
                     ^
  /Users/xxx/WebstormProjects/app/node_modules/react-native-mmkv/MMKV/Core/MMKV_IO.cpp:744:26: error: no matching member function for call to 'find'
      auto itr = container.find(key);
                 ~~~~~~~~~~^~~~
  /Users/xxx/WebstormProjects/app/node_modules/react-native-mmkv/MMKV/Core/MMKV_IO.cpp:778:21: note: in instantiation of function template specialization 'eraseHelper<std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolderCrypt, mmkv::KeyHasher, mmkv::KeyEqualer>>' requested here
                      eraseHelper(*m_dicCrypt, key);
                      ^
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1278:20: note: candidate function not viable: no known conversion from 'std::string_view' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolderCrypt, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      iterator       find(const key_type& __k)       {return __table_.find(__k);}
                     ^
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1280:20: note: candidate function not viable: no known conversion from 'std::string_view' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolderCrypt, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      const_iterator find(const key_type& __k) const {return __table_.find(__k);}
                     ^
  /Users/xxx/WebstormProjects/app/node_modules/react-native-mmkv/MMKV/Core/MMKV_IO.cpp:744:26: error: no matching member function for call to 'find'
      auto itr = container.find(key);
                 ~~~~~~~~~~^~~~
  /Users/xxx/WebstormProjects/app/node_modules/react-native-mmkv/MMKV/Core/MMKV_IO.cpp:809:21: note: in instantiation of function template specialization 'eraseHelper<std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolder, mmkv::KeyHasher, mmkv::KeyEqualer>>' requested here
                      eraseHelper(*m_dic, key);
                      ^
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1278:20: note: candidate function not viable: no known conversion from 'std::string_view' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolder, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      iterator       find(const key_type& __k)       {return __table_.find(__k);}
                     ^
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1280:20: note: candidate function not viable: no known conversion from 'std::string_view' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolder, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      const_iterator find(const key_type& __k) const {return __table_.find(__k);}
                     ^
  10 errors generated.
  [15/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/MMBuffer.cpp.o
  [16/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/InterProcessLock_Android.cpp.o
  [17/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/InterProcessLock.cpp.o
  [18/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/InterProcessLock_Win32.cpp.o
  [19/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/MemoryFile.cpp.o
  [20/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/MMKV.cpp.o
  FAILED: RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/MMKV.cpp.o 
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang++ --target=aarch64-none-linux-android29 --sysroot=/Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot  -I/Users/xxx/WebstormProjects/app/node_modules/react-native-mmkv/MMKV/Core -g -DANDROID -fdata-sections -ffunction-sections -funwind-tables -fstack-protector-strong -no-canonical-prefixes -D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security   -fno-limit-debug-info  -std=c++20 -fPIC -MD -MT RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/MMKV.cpp.o -MF RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/MMKV.cpp.o.d -o RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/MMKV.cpp.o -c /Users/xxx/WebstormProjects/app/node_modules/react-native-mmkv/MMKV/Core/MMKV.cpp
  /Users/xxx/WebstormProjects/app/node_modules/react-native-mmkv/MMKV/Core/MMKV.cpp:1066:32: error: no matching member function for call to 'find'
              return m_dicCrypt->find(key) != m_dicCrypt->end();
                     ~~~~~~~~~~~~^~~~
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1278:20: note: candidate function not viable: no known conversion from 'MMKV::MMKVKey_t' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolderCrypt, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      iterator       find(const key_type& __k)       {return __table_.find(__k);}
                     ^
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1280:20: note: candidate function not viable: no known conversion from 'MMKV::MMKVKey_t' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolderCrypt, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      const_iterator find(const key_type& __k) const {return __table_.find(__k);}
                     ^
  /Users/xxx/WebstormProjects/app/node_modules/react-native-mmkv/MMKV/Core/MMKV.cpp:1068:27: error: no matching member function for call to 'find'
              return m_dic->find(key) != m_dic->end();
                     ~~~~~~~^~~~
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1278:20: note: candidate function not viable: no known conversion from 'MMKV::MMKVKey_t' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolder, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      iterator       find(const key_type& __k)       {return __table_.find(__k);}
                     ^
  /Users/xxx/Library/Android/sdk/ndk/25.2.9519653/toolchains/llvm/prebuilt/darwin-x86_64/sysroot/usr/include/c++/v1/unordered_map:1280:20: note: candidate function not viable: no known conversion from 'MMKV::MMKVKey_t' (aka 'basic_string_view<char>') to 'const std::unordered_map<std::basic_string<char>, mmkv::KeyValueHolder, mmkv::KeyHasher, mmkv::KeyEqualer>::key_type' (aka 'const std::basic_string<char>') for 1st argument
      const_iterator find(const key_type& __k) const {return __table_.find(__k);}
                     ^
  2 errors generated.
  [21/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/MemoryFile_OSX.cpp.o
  [22/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/MemoryFile_Linux.cpp.o
  [23/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/MemoryFile_Android.cpp.o
  [24/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/ThreadLock.cpp.o
  [25/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/ThreadLock_Win32.cpp.o
  [26/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/aes/AESCrypt.cpp.o
  [27/152] Building CXX object RNMmkvSpec_cxxmodule_autolinked_build/core/CMakeFiles/core.dir/MiniPBCoder.cpp.o
  ninja: build stopped: subcommand failed.
  
  C++ build system [build] failed while executing:
      /Users/xxx/Library/Android/sdk/cmake/3.31.6/bin/ninja \
        -C \
        /Users/xxx/WebstormProjects/app/android/app/.cxx/Debug/h5i10r70/arm64-v8a \
        appmodules \
        react-native-mmkv \
        react_codegen_rnpicker \
        react_codegen_rnscreens \
        react_codegen_rnsvg \
        react_codegen_safeareacontext
    from /Users/xxx/WebstormProjects/app/android/app

android/build.gradle

buildToolsVersion = "35.0.0"
minSdkVersion = 29 		
compileSdkVersion = 35
targetSdkVersion = 34
ndkVersion = "25.2.9519653"
kotlinVersion = "1.9.25"

package.json

"react-native": "0.76.8",
"react-native-mmkv": "^3.2.0"

gradle.properties

newArchEnabled=true

cmake version 3.31.6

Update

I also tried to update NDK to the latest version, but it does not change anything. I have just some more problems because React Native datetimepicker is probably not supported with the latest version. But I still have issues for this library as well. @mrousavy

alimoli avatar Apr 03 '25 09:04 alimoli

Guten Tag, Hans here 🍻,

Ze issue looks quite detailed, but I notice you have not provided ze relevant logs from your build output. Mrousavy needs more specific logs to help you better. Please make sure to gather and share your logs using adb logcat while building the project. Also, double-check if you are using ze latest version of ze dependencies and NDK.

If you continue to have issues, please provide ze required logs and any other information that could help us replicate ze problem.

Für weiteren Support, consider sponsoring ze project as well! You can check ze sponsorship options here.

Note: If you think I made a mistake, please ping @mrousavy to take a look.

maintenance-hans[bot] avatar Apr 03 '25 09:04 maintenance-hans[bot]

+1

chramos avatar Apr 07 '25 17:04 chramos

same here

Tamimjabr avatar Apr 10 '25 08:04 Tamimjabr

+1

KolissnikBogdan avatar Apr 15 '25 13:04 KolissnikBogdan

+1

gerson avatar Apr 15 '25 16:04 gerson

I spent all day trying to figure out this problem. When you use mmkv v3 need to enable newArchitecture on gradle.properties but be careful if you have other gradle.properties file like me. I have one gradle.properties in project folder but the gradle build was using one gradle.properties on USER/.gradle folder in windows where it was setted newArchitecture=false. Look at fabric true when your application runs to confirm that this is enabled.

Try also to clear npm cache and gradle cache and the .cxx folder

danisOktaxi avatar Apr 25 '25 20:04 danisOktaxi

+1

Mrpaker avatar Aug 07 '25 03:08 Mrpaker

+1

#848 related?

OkancanCosar avatar Aug 13 '25 12:08 OkancanCosar

This has been fixed in react-native-mmkv v4.0.0-beta.0.

mrousavy avatar Aug 20 '25 14:08 mrousavy

Facing same issue . Is there any workaround. Please let me know thanks

areezmahmood avatar Aug 24 '25 04:08 areezmahmood

@mrousavy on RN 0.81 and mmkv beta 1, I still get

CMake Error at /Users/myname/quiz/AwesomeProject/node_modules/react-native-mmkv/android/CMakeLists.txt:9 (message):
    MMKV prefab does not support ABI: armeabi-v7a.  Supported ABIs: arm64-v8a,
    x86_64

spyshower avatar Aug 27 '25 16:08 spyshower

@mrousavy on RN 0.81 and mmkv beta 1, I still get

CMake Error at /Users/myname/quiz/AwesomeProject/node_modules/react-native-mmkv/android/CMakeLists.txt:9 (message):
    MMKV prefab does not support ABI: armeabi-v7a.  Supported ABIs: arm64-v8a,
    x86_64

use Release 4.0.0-beta.1 version. 3.3.0 has error

OkancanCosar avatar Aug 28 '25 15:08 OkancanCosar

@OkancanCosar reread what I wrote

spyshower avatar Aug 28 '25 15:08 spyshower

@OkancanCosar reread what I wrote

maybe you reread this. beta.1 work for me https://github.com/mrousavy/react-native-mmkv/issues/827#issuecomment-3206587102

OkancanCosar avatar Aug 30 '25 09:08 OkancanCosar

@OkancanCosar reread what I wrote

maybe you reread this. beta.1 work for me #827 (comment)

Ok lol xD

spyshower avatar Aug 30 '25 10:08 spyshower

@mrousavy Still broken in beta 7.

spyshower avatar Sep 01 '25 17:09 spyshower

4.0.0-beta.7 did not worked.

Task :react-native-mmkv:configureCMakeDebug[armeabi-v7a] FAILED com.google.prefab.api.NoMatchingLibraryException: No compatible library found for //mmkv/mmkv. Rejected the following libraries:

ganesht10 avatar Sep 02 '25 11:09 ganesht10

4.0.0-beta.7 did not worked.

Task :react-native-mmkv:configureCMakeDebug[armeabi-v7a] FAILED com.google.prefab.api.NoMatchingLibraryException: No compatible library found for //mmkv/mmkv. Rejected the following libraries:

@ganesht10 this is because you did not read the release notes, or the V4 upgrade guide.

mrousavy avatar Sep 02 '25 22:09 mrousavy

Apparently a lot of you didn't. To clarify; I'm talking about this:

Image

Your error means that you are building for a 32-bit architecture (armeabi-v7a) which is no longer supported by the core MMKV library by Tencent.

mrousavy avatar Sep 02 '25 22:09 mrousavy

"expo": "~53.0.9", "react-native": "0.79.2", and [ExpoRootProject] Using the following versions:

buildTools: 35.0.0 minSdk: 24 compileSdk: 35 targetSdk: 35 ndk: 27.1.12297006 kotlin: 2.0.21 ksp: 2.0.21-1.0.28 Non compatible avec les pages de 16 Ko Masquer les détails En savoir plus Bibliothèques non compatibles avec les pages de 16 Ko : base/lib/arm64-v8a/libanimation-decoder-gif.so base/lib/arm64-v8a/libavif_android.so base/lib/arm64-v8a/libbarhopper_v3.so base/lib/arm64-v8a/libexpo-modules-core.so base/lib/x86_64/libanimation-decoder-gif.so base/lib/x86_64/libavif_android.so base/lib/x86_64/libbarhopper_v3.so base/lib/x86_64/libexpo-modules-core.so

AFDHAL2009 avatar Sep 22 '25 10:09 AFDHAL2009