Я пытаюсь упаковать свой проект Unreal Engine для Android с помощью Unreal Engine 5.4. В проект входит плагин Convai, который зависит от gRPC и Protobuf. Однако во время упаковки я столкнулся со следующей ошибкой компоновщика:
Сообщение об ошибке:
Что я пробовал:
Проверка папки плагина Convai:
Источник плагина/ThirdParty/grpc/lib/android/ в каталоге отсутствует необходимые статические библиотеки Protobuf (
ibprotoc.a)< /code> для Android Architectures, таких как ARM64-V8A.
Поиск предварительных библиотек Protobuf: < /p>
Я проверил выпуск GitHub Protobuf, но они предлагают предварительные библиотеки только для настольных платформ ( Linux, MacOS, Windows). Библиотеки Android не включены.
Попытка изменения платформы. Код> Файл для включения уровня API 34, но это не решило проблему упаковки. > Очистить промежуточные и сохраненные папки и несколько раз перестроил проект. P> Версия Unreal Engine: 5.4
Android NDK Версия: R26B
Target API Уровень: Android-34
Plugin Версия: Последний (по состоянию на ноябрь 2024 г.)
Версия ProtoBuf: нужно, по крайней мере, v3.21, чтобы соответствовать GRPC. < /P>
< /blockquote>
Как я могу разрешить ошибки линкера и получить или создать недостающие библиотеки Protobuf (libprotobuf.a
, libprotobuf-lite.a , libprotoc.a ) для архитектур Android, таких как ARM64-V8A?
Может ли проблема быть связана с несоответствующими версиями NDK или конфигурациями Protobuf?>
Я пытаюсь упаковать свой проект Unreal Engine для Android с помощью Unreal Engine 5.4. В проект входит плагин Convai, который зависит от gRPC и Protobuf. Однако во время упаковки я столкнулся со следующей ошибкой компоновщика: Сообщение об ошибке: [code]`Android (ASTC)): InstalledDir: C:/Users/iassi/AppData/Local/Android/Sdk/ndk/26.1.10909125/toolchains/llvm/prebuilt/windows-x86_64/bin UATHelper: Packaging (Android (ASTC)): NDK toolchain: r26b, NDK version: 260200, ClangVersion: 17.0.2 UATHelper: Packaging (Android (ASTC)): Compiling Native 64-bit code with NDK API 'android-34' UATHelper: Packaging (Android (ASTC)): Link: C:\Users\iassi\AppData\Local\Android\Sdk\ndk\26.1.10909125\toolchains\llvm\prebuilt\windows-x86_64\bin\clang++.exe -static-libstdc++ -no-canonical-prefixes -shared -Wl,-Bsymbolic -Wl,--no-undefined -Wl,--gc-sections --target=aarch64-none-linux-android34 --gcc-toolchain="C:/Users/iassi/AppData/Local/Android/Sdk/ndk/26.1.10909125/toolchains/llvm/prebuilt/windows-x86_64" --sysroot="C:/Users/iassi/AppData/Local/Android/Sdk/ndk/26.1.10909125/toolchains/llvm/prebuilt/windows-x86_64/sysroot" -DANDROID=1 -march=armv8-a -Wl,-no-pie -fuse-ld=lld -Wl,-soname, libUnreal.so -Wl,--build-id=sha1 -Wl,--pack-dyn-relocs=android+relr,--use-android-relr-tags -Wl,--hash-style=gnu -z max-page-size=65536 -o "C:/Users/iassi/OneDrive/Documents/Unreal Projects/test3/Binaries/Android/test3-arm64.so" @"C:/Users/iassi/OneDrive/Documents/Unreal Projects/test3/Intermediate/Build/Android/a/test3/Development/test3-arm64.so.rsp" UATHelper: Packaging (Android (ASTC)): Link: C:\Users\iassi\AppData\Local\Android\Sdk\ndk\26.1.10909125\toolchains\llvm\prebuilt\windows-x86_64\bin\clang++.exe -static-libstdc++ -no-canonical-prefixes -shared -Wl,-Bsymbolic -Wl,--no-undefined -Wl,--gc-sections --target=x86_64-none-linux-android34 --gcc-toolchain="C:/Users/iassi/AppData/Local/Android/Sdk/ndk/26.1.10909125/toolchains/llvm/prebuilt/windows-x86_64" --sysroot="C:/Users/iassi/AppData/Local/Android/Sdk/ndk/26.1.10909125/toolchains/llvm/prebuilt/windows-x86_64/sysroot" -DANDROID=1 -march=atom -Wl,-no-pie -fuse-ld=lld -Wl,-soname,libU nreal.so -Wl,--build-id=sha1 -Wl,--pack-dyn-relocs=android+relr,--use-android-relr-tags -Wl,--hash-style=gnu -z max-page-size=65536 -o "C:/Users/iassi/OneDrive/Documents/Unreal Projects/test3/Binaries/Android/test3-x64.so" @"C:/Users/iassi/OneDrive/Documents/Unreal Projects/test3/Intermediate/Build/Android/x/test3/Development/test3-x64.so.rsp" UATHelper: Packaging (Android (ASTC)): Writing manifest to C:\Users\iassi\OneDrive\Documents\Unreal Projects\test3\Intermediate\Build\Manifest.xml UATHelper: Packaging (Android (ASTC)): Building test3... UATHelper: Packaging (Android (ASTC)): [Adaptive Build] Excluded from test3 unity file: test3.cpp UATHelper: Packaging (Android (ASTC)): Determining max actions to execute in parallel (14 physical cores, 20 logical cores) UATHelper: Packaging (Android (ASTC)): Executing up to 14 processes, one per physical core UATHelper: Packaging (Android (ASTC)): Requested 1.5 GB memory per action, 728.52 MB available: limiting max parallel actions to 1 UATHelper: Packaging (Android (ASTC)): Using Parallel executor to run 7 action(s) UATHelper: Packaging (Android (ASTC)): ------ Building 7 action(s) started ------ UATHelper: Packaging (Android (ASTC)): [1/7] Compile [arm64] SharedPCH.Core.Project.ValApi.Cpp20.h UATHelper: Packaging (Android (ASTC)): [2/7] Compile [x64] SharedPCH.Core.Project.ValApi.Cpp20.h UATHelper: Packaging (Android (ASTC)): [3/7] Compile [arm64] test3.cpp UATHelper: Packaging (Android (ASTC)): [4/7] clang++ test3-arm64.so UATHelper: Packaging (Android (ASTC)): [5/7] Compile [x64] test3.cpp UATHelper: Packaging (Android (ASTC)): [6/7] clang++ test3-x64.so UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: google::protobuf::io::StringOutputStream::StringOutputStream(std::__ndk1::basic_string*) UATHelper: Packaging (Android (ASTC)): >>> referenced by csharp_generator.cc:778 (C:/Storage/Software/Tools/gRPC/Convai_grpc/grpc/src/compiler/csharp_generator.cc:778) UATHelper: Packaging (Android (ASTC)): >>> csharp_generator.cc.o:(grpc_csharp_generator::GetServices(google::protobuf::FileDescriptor const*, bool, bool, bool)) in archive C:/Program Files/Epic Games/ext/UE_5.4/Engine/Plugins/Marketplace/Convai/Source/ThirdParty/gRPC/lib/android/x86_64/libgrpc_plugin_support.a UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: google::protobuf::io::Printer::Printer(google::protobuf::io::ZeroCopyOutputStream*, char) UATHelper: Packaging (Android (ASTC)): >>> referenced by csharp_generator.cc:779 (C:/Storage/Software/Tools/gRPC/Convai_grpc/grpc/src/compiler/csharp_generator.cc:779) UATHelper: Packaging (Android (ASTC)): >>> csharp_generator.cc.o:(grpc_csharp_generator::GetServices(google::protobuf::FileDescriptor const*, bool, bool, bool)) in archive C:/Program Files/Epic Games/ext/UE_5.4/Engine/Plugins/Marketplace/Convai/Source/ThirdParty/gRPC/lib/android/x86_64/libgrpc_plugin_support.a UATHelper: Packaging (Android (ASTC)): ld.lld: error: undefined symbol: google::protobuf::io::Printer::Print(std::__ndk1::map const&, char const*)` [/code] Что я пробовал: Проверка папки плагина Convai: Источник плагина/ThirdParty/grpc/lib/android/ в каталоге отсутствует необходимые статические библиотеки Protobuf ([code]libprotobuf.[/code] a, libprotobuf-lite.a и l[code]ibprotoc.a)< /code> для Android Architectures, таких как ARM64-V8A. Поиск предварительных библиотек Protobuf: < /p> Я проверил выпуск GitHub Protobuf, но они предлагают предварительные библиотеки только для настольных платформ ( Linux, MacOS, Windows). Библиотеки Android не включены. Попытка изменения платформы. Код> Файл для включения уровня API 34, но это не решило проблему упаковки. > Очистить промежуточные и сохраненные папки и несколько раз перестроил проект. P> Версия Unreal Engine: 5.4 Android NDK Версия: R26B Target API Уровень: Android-34 Plugin Версия: Последний (по состоянию на ноябрь 2024 г.)
Версия ProtoBuf: нужно, по крайней мере, v3.21, чтобы соответствовать GRPC. < /P> < /blockquote> Как я могу разрешить ошибки линкера и получить или создать недостающие библиотеки Protobuf (libprotobuf.a[/code], libprotobuf-lite.a , libprotoc.a ) для архитектур Android, таких как ARM64-V8A?
Может ли проблема быть связана с несоответствующими версиями NDK или конфигурациями Protobuf?>
Я пытаюсь упаковать свой проект Unreal Engine для Android с помощью Unreal Engine 5.4. В проект входит плагин Convai, который зависит от gRPC и Protobuf. Однако во время упаковки я столкнулся со следующей ошибкой компоновщика:
Сообщение об ошибке:...
Я пытаюсь упаковать свой проект Unreal Engine для Android с помощью Unreal Engine 5.4. В проект входит плагин Convai, который зависит от gRPC и Protobuf. Однако во время упаковки я столкнулся со следующей ошибкой компоновщика:
Сообщение об ошибке:...
Я создал HelloDataStore в Android Studio Koala с Gradle 8.7. Я новичок в изучении Proto DataStore. Я проверил кодовую лабораторию для прототипа DataStore, НО не удалось. Затем я проверил приложение nia (теперь в Android) и обнаружил использование...
Я создал HelloDataStore в Android Studio Koala с Gradle 8.7. Я новичок в изучении Proto DataStore. Я проверил кодовую лабораторию для прототипа DataStore, НО не удалось. Затем я проверил приложение nia (теперь в Android) и обнаружил использование...
Я работаю над проектом Flutter/Android, который интегрирует внешний модуль Java под названием dtp. В проекте возникает конфликт зависимостей между двумя версиями Protobuf: protobuf-javalite и protobuf-java.
Вот ситуация:
Flutter/Android: для...