getting error 'not executable: 64-bit ELF file'
I'm trying to install the pre-built binaries on an Android 6.0 Marshmallow device and getting that error. I assume the pre-built binaries were for arm64 and I need to compile myself. Or does anyone know anything else about this?
Correct the provided binaries are only for arm64 devices, specifically the Corellium devices.
You could build this locally for your own device, though it was not the original intended purpose/
Thanks for the reply, and the project. Am I lost or this the only way to turn an AOSP userdebug build into full root that normal root apps can use? I'm surprised people haven't come across this problem before and I feel like I'm missing a step.
Anyway, I compiled with a makefile.local of:
export CC := /cygdrive/e/android-sdk/ndk/21.1.6352462/toolchains/llvm/prebuilt/windows-x86_64/bin/armv7a-linux-androideabi23-clang export SYSROOT := /cygdrive/e/android-sdk/ndk/21.1.6352462/platforms/android-23/arch-arm
This built su on Windows 7 (I know...) with cygwin. I copied to my Android 6.0 device and at least su runs now, but I get 255 error code whenever I run it. I think my init.sud.rc is never ran at startup.
Most people use Magisk in some form or another. This specific method is more useful for emulators or specifically crafted environments like Corellium devices.
While it can run on a real device, it is a bit of a security risk as anything requesting this is allowed to use root without a prompt, etc.
You would need to look for the at your logcat early on to see why the init.sud.rc is failing. If it is failing, you need to fix whatever is going wrong since this means the daemon is likely not starting. If the daemon fails to start, there is nothing to provide the pts connection for all the other requests.