I am trying to package a project which contains support for Armv7a, but cannot successfully since its throwing me exceptions. I am able to package for arm64 successfully if I untick the option in package project window in Unreal Engine 4.27.2.
I have also been researching through the Internet, but simply cannot find a solution, they solutions presented were to disable exceptions all together using "-fno-exceptions" but that doesn't seem to work either.
The error is for building .so for armv7 is as follows:
`UATHelper: Packaging (Android (ETC2)): PLATFORM_ANDROID_NDK_VERSION = 230100
UATHelper: Packaging (Android (ETC2)): NDK toolchain: r23, NDK version: 31, GccVersion: 4.9, ClangVersion: 12.0.5
UATHelper: Packaging (Android (ETC2)): Compiling Native 32-bit code with NDK API 'android-31'
UATHelper: Packaging (Android (ETC2)): Compiling Native 64-bit code with NDK API 'android-31'
UATHelper: Packaging (Android (ETC2)): Writing manifest to C:\Users\User1\Documents\Unreal Projects\Demo3AndroidCpp\Intermediate\Build\Manifest.xml
UATHelper: Packaging (Android (ETC2)): Building Demo3AndroidCpp...
UATHelper: Packaging (Android (ETC2)): Building 2 actions with 8 processes...
UATHelper: Packaging (Android (ETC2)): [1/2] Demo3AndroidCpp-armv7.so
UATHelper: Packaging (Android (ETC2)): ld.lld: error: undefined symbol: __aeabi_unwind_cpp_pr1
UATHelper: Packaging (Android (ETC2)): >>> referenced by Module.Launch.cpp
UATHelper: Packaging (Android (ETC2)): >>> C:/Program Files/Epic Games/UE_4.27/Engine/Intermediate/Build/Android/UE4/Development/Launch/Module.Launch.cppa7.o:(.ARM.exidx.text._ZN16FAppEventManager11GetInstanceEv+0x0)
UATHelper: Packaging (Android (ETC2)): >>> referenced by Module.Launch.cpp
UATHelper: Packaging (Android (ETC2)): >>> C:/Program Files/Epic Games/UE_4.27/Engine/Intermediate/Build/Android/UE4/Development/Launch/Module.Launch.cppa7.o:(.ARM.exidx.text._ZN16FAppEventManager15DequeueAppEventEv+0x0)
UATHelper: Packaging (Android (ETC2)): >>> referenced by Module.Launch.cpp
UATHelper: Packaging (Android (ETC2)): >>> C:/Program Files/Epic Games/UE_4.27/Engine/Intermediate/Build/Android/UE4/Development/Launch/Module.Launch.cppa7.o:(.ARM.exidx.text._ZN16FAppEventManager17ReleaseMicrophoneEb+0x0)
UATHelper: Packaging (Android (ETC2)): >>> referenced 161000 more times
UATHelper: Packaging (Android (ETC2)):
UATHelper: Packaging (Android (ETC2)): ld.lld: error: undefined symbol: __aeabi_unwind_cpp_pr0
UATHelper: Packaging (Android (ETC2)): >>> referenced by Module.Launch.cpp
UATHelper: Packaging (Android (ETC2)): >>> C:/Program Files/Epic Games/UE_4.27/Engine/Intermediate/Build/Android/UE4/Development/Launch/Module.Launch.cppa7.o:(.ARM.exidx.text._ZN16FAppEventManager4TickEv+0x0)
UATHelper: Packaging (Android (ETC2)): >>> referenced by Module.Launch.cpp
UATHelper: Packaging (Android (ETC2)): >>> C:/Program Files/Epic Games/UE_4.27/Engine/Intermediate/Build/Android/UE4/Development/Launch/Module.Launch.cppa7.o:(.ARM.exidx.text._ZZN16FAppEventManager4TickEvEN4Impl21ExecCheckImplInternalEv+0x0)
UATHelper: Packaging (Android (ETC2)): >>> referenced by Module.Launch.cpp
UATHelper: Packaging (Android (ETC2)): >>> C:/Program Files/Epic Games/UE_4.27/Engine/Intermediate/Build/Android/UE4/Development/Launch/Module.Launch.cppa7.o:(.ARM.exidx.text._ZN16FAppEventManager17ExecWindowResizedEv+0x0)
UATHelper: Packaging (Android (ETC2)): >>> referenced 369570 more times
UATHelper: Packaging (Android (ETC2)): clang++: error: linker command failed with exit code 1 (use -v to see invocation)
PackagingResults: Error: undefined symbol: __aeabi_unwind_cpp_pr1
PackagingResults: Error: undefined symbol: __aeabi_unwind_cpp_pr0
PackagingResults: Error: linker command failed with exit code 1 (use -v to see invocation)
UATHelper: Packaging (Android (ETC2)): Took 32.2903757s to run UnrealBuildTool.exe, ExitCode=6
UATHelper: Packaging (Android (ETC2)): UnrealBuildTool failed. See log for more details. (C:\Users\User1\AppData\Roaming\Unreal Engine\AutomationTool\Logs\C+Program+Files+Epic+Games+UE_4.27\UBT-Demo3AndroidCpp-Android-Development.txt)
UATHelper: Packaging (Android (ETC2)): AutomationTool exiting with ExitCode=6 (6)
UATHelper: Packaging (Android (ETC2)): BUILD FAILED
PackagingResults: Error: Unknown Error`
I can currently only support a limited number of devices because of arm32 package error.
The correct solution to this is proper compatibility according to UE4 Documentation.
UE Engine v4.27.2 supports NDK v21.4e where I earlier tried to use v23.0. After downloading and changing to v21.4e I was able to successfully compile for armv7a devices.