Error: UAT: ld.lld: error: undefined symbol: __aarch64_swp8_acq_rel UE5.1

Hello, :slight_smile:
I have a problem when I build a package android project for Quest2 in UE5.1.
My config worked in UE5.0.

Maybe anyone has the same problem ^^?

#############################################################
Log :
LogPlayLevel: Error: UAT: ld.lld: error: undefined symbol: __aarch64_swp8_acq_rel
LogPlayLevel: Error: UAT: ld.lld: error: undefined symbol: __aarch64_ldadd4_acq_rel
LogPlayLevel: Error: UAT: ld.lld: error: undefined symbol: __aarch64_cas4_acq_rel
LogPlayLevel: Error: UAT: ld.lld: error: undefined symbol: __aarch64_ldadd4_relax
LogPlayLevel: Error: UAT: ld.lld: error: undefined symbol: __aarch64_cas4_relax
LogPlayLevel: Error: UAT: ld.lld: error: undefined symbol: __aarch64_ldadd4_rel
LogPlayLevel: Error: UAT: ld.lld: error: undefined symbol: __aarch64_ldadd8_acq_rel
LogPlayLevel: Error: UAT: ld.lld: error: undefined symbol: __aarch64_cas8_acq_rel
LogPlayLevel: Error: UAT: ld.lld: error: undefined symbol: __aarch64_ldset8_rel
LogPlayLevel: Error: UAT: ld.lld: error: undefined symbol: __aarch64_ldadd4_acq
LogPlayLevel: Error: UAT: ld.lld: error: undefined symbol: __aarch64_cas8_relax
LogPlayLevel: Error: UAT: ld.lld: error: undefined symbol: __aarch64_cas8_acq
LogPlayLevel: Error: UAT: ld.lld: error: undefined symbol: __aarch64_ldset8_acq
LogPlayLevel: Error: UAT: ld.lld: error: undefined symbol: __aarch64_ldset8_acq_rel
LogPlayLevel: Error: UAT: ld.lld: error: undefined symbol: __aarch64_ldadd8_relax
LogPlayLevel: Error: UAT: ld.lld: error: undefined symbol: __aarch64_cas8_rel
LogPlayLevel: Error: UAT: ld.lld: error: undefined symbol: __aarch64_ldset4_rel
LogPlayLevel: Error: UAT: ld.lld: error: undefined symbol: __aarch64_swp1_acq_rel
LogPlayLevel: Error: UAT: ld.lld: error: undefined symbol: __aarch64_cas1_acq_rel
LogPlayLevel: Error: UAT: ld.lld: error: undefined symbol: __aarch64_swp4_acq_rel
LogPlayLevel: Error: UAT: ld.lld: error: too many errors emitted, stopping now (use -error-limit=0 to see all errors)
LogPlayLevel: Error: UAT: clang++: error: linker command failed with exit code 1 (use -v to see invocation)
PackagingResults: Error: Launch failed! Unknown Error
#############################################################

Accept SDK License

Andoide SDK

12 Likes

Your Android ndk is old,UE5.1 must allow r25+

23 Likes

Thanks you very much !
It worked.

Great, I had the same error and the new NDK works, thanks!

  • Android Studio: Install the NDK 25.1.8937393

To switch from UE5.0 to UE5.1 I had to do more changes. Maybe it helps somebody:

  • Android Studio: SDK Platform to 29 (Quest 2 is Android 10)
  • Android Studio: Android SDK Tools to 30.0.3
  • Android Studio: Command-line to 8.0 latest
  • Android Studio: CMake to 3.10.2.4988404
  • SetupAndroid.bat to Update SDK
  • UE5.1: Settings, Platforms, Android SDK change the NDK path
  • UE5.1: Settings, Platforms, Android change Target SDK Version to 29 (Android 10)
  • UE5.1: Platforms (Launch), Android, Quest 2 do Update Device and restart UE to get SDK Managment “Installed: r25b”

Now it works again.

32 Likes

Thanks a lot for the upgrade steps, exactly what I needed. Worked fine after this was done. The SetupAndroid.bat also helped prevent an additional dialogue popping up on packaging.

Thank you for your sincere reply sir

Thank you

I was just wondering do you the correct way to connect ue5.1 with mobile phone

You saved me from going crazy trying to make this work, thank you for this post!

Also, if you still have errors about NDK

something like
“UAT: ERROR: minSdkVersion is higher than Android version installed on device, possibly due to NDK API Level”

change NDK Api level from latest to android-29 in Project Settings=>Platforms=>Android SDK

thanks dude…!