Download

Building failure due to missing "cpu-features-patched.c"

Hi, Android developers,

I was trying to build APK with UnrealEditor4 on Linux, which is built from latest GitHub main branch source code.
I have a MacBookPro with UE4.14.1 which can build APK properly to serve as reference system to setup Android environment for me.

Since my Linux box have much stronger CPU/GPU, I wish I can build APK from my Linux box.
I set up everything including android NDK/SDK, ant, gradle all accordingly, and update the environment variable as well.
The option to build APK finally no longer show me dialog to stop me.

But when it start building, no matter which version of Android NDK I ask it to use, (I tried 19,21,23)
It always stop at this message:
ERROR: System.UnauthorizedAccessException: Access to the path “/opt/android-ndk/sources/android/cpufeatures/cpu-features-patched.c” is denied.
(And yes, this environment builds my own Android native app with both ANT and Gradle properly.)

As far as I can search around, this is not a file from Android NDK. I couldn’t find this neither on my MBP reference system.
Where does this file come from? Why did my MBP with prebuilt UE 14.1 never meet this issue?

May anyone who is familiar with Android building procedure lend me a hand? Thank you.

cpu-features-patched.c is generated if not found in AndroidToolChain.cs: ConditionallyAddNDKSourceFiles(). You likely don’t have write permission to the directory. The patch fixes an issue with Intel-based Android devices emulating ARM.

Hi, Chris

Thank you so much for your help.
Shocked to learn how stupid or terrified I was that I couldn’t read the log properly.