cesium-unreal icon indicating copy to clipboard operation
cesium-unreal copied to clipboard

Android build fails caused by missing sqlite3 reference

Open demonixis opened this issue 1 year ago • 1 comments

Hello, I try to compile my project with the latest Cesium Plugin from the marketplace (already tried with latest sources too) with the following errors:

My setup

  • Unreal 5.3.1 (Launcher version)
  • CesiumForUnreal (Marketplace)
  • C++ project
  • Android target

I can confirme that if I disable the Cesium plugin, it bulds.

UATHelper: Packaging (Android (ASTC)): [12/13] clang++ MiniFS-Android-Shipping-arm64.so
UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: cesium_sqlite3_open
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::createConnection() const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: cesium_sqlite3_close_v2
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::createConnection() const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(std::__ndk1::unique_ptr<cesium_sqlite3, (anonymous namespace)::DeleteSqliteConnection>::~unique_ptr()) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::Impl::~Impl()) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: cesium_sqlite3_exec
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::createConnection() const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::createConnection() const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::createConnection() const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced 1 more times
UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: cesium_sqlite3_finalize
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::createConnection() const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::createConnection() const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::createConnection() const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced 11 more times
UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: cesium_sqlite3_errstr
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::createConnection() const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:((anonymous namespace)::prepareStatement(std::__ndk1::unique_ptr<cesium_sqlite3, (anonymous namespace)::DeleteSqliteConnection> const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&)) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::getEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&) const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced 31 more times
UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: cesium_sqlite3_free
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::createConnection() const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::createConnection() const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
PackagingResults: Error: undefined symbol: cesium_sqlite3_open
PackagingResults: Error: undefined symbol: cesium_sqlite3_close_v2
PackagingResults: Error: undefined symbol: cesium_sqlite3_exec
PackagingResults: Error: undefined symbol: cesium_sqlite3_finalize
PackagingResults: Error: undefined symbol: cesium_sqlite3_errstr
PackagingResults: Error: undefined symbol: cesium_sqlite3_free
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::createConnection() const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced 1 more times
UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: cesium_sqlite3_prepare_v2
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:((anonymous namespace)::prepareStatement(std::__ndk1::unique_ptr<cesium_sqlite3, (anonymous namespace)::DeleteSqliteConnection> const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&)) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: cesium_sqlite3_reset
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::getEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&) const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::getEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&) const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::storeEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, long, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::map<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::basic_string<char, std::__ndk1::char_traits<ch
ar>, std::__ndk1::allocator<char> >, CesiumAsync::CaseInsensitiveCompare, std::__ndk1::allocator<std::__ndk1::pair<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > > > const&, unsigned short, std::__ndk1::map<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, CesiumAsync::CaseInsensitiveCompare, std::__ndk1:
:allocator<std::__ndk1::pair<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > > > const&, gsl::span<std::byte const, 18446744073709551615ul> const&)) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced 4 more times
UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: cesium_sqlite3_clear_bindings
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::getEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&) const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::getEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&) const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
PackagingResults: Error: undefined symbol: cesium_sqlite3_prepare_v2
PackagingResults: Error: undefined symbol: cesium_sqlite3_reset
PackagingResults: Error: undefined symbol: cesium_sqlite3_clear_bindings
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::storeEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, long, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::map<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::basic_string<char, std::__ndk1::char_traits<ch
ar>, std::__ndk1::allocator<char> >, CesiumAsync::CaseInsensitiveCompare, std::__ndk1::allocator<std::__ndk1::pair<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > > > const&, unsigned short, std::__ndk1::map<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, CesiumAsync::CaseInsensitiveCompare, std::__ndk1:
:allocator<std::__ndk1::pair<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > > > const&, gsl::span<std::byte const, 18446744073709551615ul> const&)) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced 3 more times
UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: cesium_sqlite3_bind_text
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::getEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&) const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::storeEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, long, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::map<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::basic_string<char, std::__ndk1::char_traits<ch
ar>, std::__ndk1::allocator<char> >, CesiumAsync::CaseInsensitiveCompare, std::__ndk1::allocator<std::__ndk1::pair<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > > > const&, unsigned short, std::__ndk1::map<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, CesiumAsync::CaseInsensitiveCompare, std::__ndk1:
:allocator<std::__ndk1::pair<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > > > const&, gsl::span<std::byte const, 18446744073709551615ul> const&)) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
PackagingResults: Error: undefined symbol: cesium_sqlite3_bind_text
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::storeEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, long, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::map<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::basic_string<char, std::__ndk1::char_traits<ch
ar>, std::__ndk1::allocator<char> >, CesiumAsync::CaseInsensitiveCompare, std::__ndk1::allocator<std::__ndk1::pair<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > > > const&, unsigned short, std::__ndk1::map<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, CesiumAsync::CaseInsensitiveCompare, std::__ndk1:
:allocator<std::__ndk1::pair<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > > > const&, gsl::span<std::byte const, 18446744073709551615ul> const&)) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced 3 more times
UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: cesium_sqlite3_step
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::getEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&) const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::getEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&) const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::storeEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, long, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::map<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::basic_string<char, std::__ndk1::char_traits<ch
ar>, std::__ndk1::allocator<char> >, CesiumAsync::CaseInsensitiveCompare, std::__ndk1::allocator<std::__ndk1::pair<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > > > const&, unsigned short, std::__ndk1::map<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, CesiumAsync::CaseInsensitiveCompare, std::__ndk1:
:allocator<std::__ndk1::pair<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > > > const&, gsl::span<std::byte const, 18446744073709551615ul> const&)) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced 4 more times
UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: cesium_sqlite3_column_int64
PackagingResults: Error: undefined symbol: cesium_sqlite3_step
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::getEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&) const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::getEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&) const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
PackagingResults: Error: undefined symbol: cesium_sqlite3_column_int64
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::prune()) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: cesium_sqlite3_column_text
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::getEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&) const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::getEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&) const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::getEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&) const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced 1 more times
UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: cesium_sqlite3_column_int
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::getEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&) const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: cesium_sqlite3_column_blob
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::getEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&) const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: cesium_sqlite3_column_bytes
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::getEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&) const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: cesium_sqlite3_bind_int64
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::getEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&) const) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
PackagingResults: Error: undefined symbol: cesium_sqlite3_column_text
PackagingResults: Error: undefined symbol: cesium_sqlite3_column_int
PackagingResults: Error: undefined symbol: cesium_sqlite3_column_blob
PackagingResults: Error: undefined symbol: cesium_sqlite3_column_bytes
PackagingResults: Error: undefined symbol: cesium_sqlite3_bind_int64
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::storeEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, long, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::map<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::basic_string<char, std::__ndk1::char_traits<ch
ar>, std::__ndk1::allocator<char> >, CesiumAsync::CaseInsensitiveCompare, std::__ndk1::allocator<std::__ndk1::pair<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > > > const&, unsigned short, std::__ndk1::map<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, CesiumAsync::CaseInsensitiveCompare, std::__ndk1:
:allocator<std::__ndk1::pair<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > > > const&, gsl::span<std::byte const, 18446744073709551615ul> const&)) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::storeEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, long, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::map<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::basic_string<char, std::__ndk1::char_traits<ch
ar>, std::__ndk1::allocator<char> >, CesiumAsync::CaseInsensitiveCompare, std::__ndk1::allocator<std::__ndk1::pair<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > > > const&, unsigned short, std::__ndk1::map<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, CesiumAsync::CaseInsensitiveCompare, std::__ndk1:
:allocator<std::__ndk1::pair<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > > > const&, gsl::span<std::byte const, 18446744073709551615ul> const&)) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): >>> referenced 1 more times
UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: cesium_sqlite3_bind_int
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::storeEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, long, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::map<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::basic_string<char, std::__ndk1::char_traits<ch
ar>, std::__ndk1::allocator<char> >, CesiumAsync::CaseInsensitiveCompare, std::__ndk1::allocator<std::__ndk1::pair<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > > > const&, unsigned short, std::__ndk1::map<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, CesiumAsync::CaseInsensitiveCompare, std::__ndk1:
:allocator<std::__ndk1::pair<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > > > const&, gsl::span<std::byte const, 18446744073709551615ul> const&)) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: cesium_sqlite3_bind_blob
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
PackagingResults: Error: undefined symbol: cesium_sqlite3_bind_int
PackagingResults: Error: undefined symbol: cesium_sqlite3_bind_blob
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::storeEntry(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, long, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const&, std::__ndk1::map<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::basic_string<char, std::__ndk1::char_traits<ch
ar>, std::__ndk1::allocator<char> >, CesiumAsync::CaseInsensitiveCompare, std::__ndk1::allocator<std::__ndk1::pair<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > > > const&, unsigned short, std::__ndk1::map<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> >, CesiumAsync::CaseInsensitiveCompare, std::__ndk1:
:allocator<std::__ndk1::pair<std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > const, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, std::__ndk1::allocator<char> > > > > const&, gsl::span<std::byte const, 18446744073709551615ul> const&)) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: cesium_sqlite3_changes
UATHelper: Packaging (Android (ASTC)): >>> referenced by SqliteCache.cpp
UATHelper: Packaging (Android (ASTC)): >>>               SqliteCache.cpp.o:(CesiumAsync::SqliteCache::prune()) in archive E:/Unreal/MiniFS-UE4/Plugins/CesiumForUnreal/Source/ThirdParty/lib/Android-xaarch64/libCesiumAsync.a
UATHelper: Packaging (Android (ASTC)): clang++: error: linker command failed with exit code 1 (use -v to see invocation)
UATHelper: Packaging (Android (ASTC)): Total time in Parallel executor: 507.43 seconds
UATHelper: Packaging (Android (ASTC)): Total execution time: 517.52 seconds
PackagingResults: Error: undefined symbol: cesium_sqlite3_changes
PackagingResults: Error: linker command failed with exit code 1 (use -v to see invocation)
UATHelper: Packaging (Android (ASTC)): Took 517,90s to run dotnet.exe, ExitCode=6
UATHelper: Packaging (Android (ASTC)): UnrealBuildTool failed. See log for more details. (C:\Users\comte\AppData\Roaming\Unreal Engine\AutomationTool\Logs\D+Devel+UE_5.3\UBT-MiniFS-Android-Shipping.txt)
UATHelper: Packaging (Android (ASTC)): AutomationTool executed for 0h 8m 40s
UATHelper: Packaging (Android (ASTC)): AutomationTool exiting with ExitCode=6 (6)
UATHelper: Packaging (Android (ASTC)): BUILD FAILED
PackagingResults: Error: Unknown Error

demonixis avatar Oct 25 '23 14:10 demonixis

The sqlite3 symbols should be found in the libsqlite3.a library in the Source/ThirdParty/lib/Android-xaarch64 subdirectory of Cesium for Unreal. I don't know why they're not found on your system. Can you reproduce this with the Cesium for Unreal Samples project, or only with your own project?

kring avatar Oct 28 '23 10:10 kring