2

I'm trying to get proxydroid or redsocks to run on genymotion android emulator (x86). Adb shell into the device, run redsocks and I get "not executable: magic 7F45". I know it means that the version doesnt comply with the cpu. however, on Genymotion I'm able to run a bunch of Arm packages, with no problem (having installed the genymotion arm translation files).

I have compiled redsocks sources on my ubuntu box (binary works fine on my ubuntu x86), but when I copied the binary to the emulator- it still gives the same error message when I try to run it (not executable: magic 7F45). So it looks like neither the arm nor the x86 versions are working on the emulator

My question: is there a way to get redsocks run on genymotion?

UPDATE: I have taken the redsocks binary that I compiled on my ubuntu x86 box, and pushed it to x86 avd (standard sdk) - it worked perfect. So it appears that the "not executable: magic 7F45" error is not related to cross-cpu compilation. Anyone know other reason to getting this error message?

  • I have the same problem with you, But I don't know why... Can you share me the redsocks file ? thx a lot ~ – user168807 Jun 3 '16 at 10:18
0

What file(1) utility says about your compiled binary?

Because compiling on x86-based PC does not promises your binary always will have x86 target platform - GCC can produce virtually any targets.

0

You can't freely copy binaries from your Ubuntu box to emulator one - even if all are x86-based, they use different basic OS libraries.

To compile binary for Android-x86 target you must use special cross-compiling tools\environment. See Android sources toolchain to take a look on how they configure gcc+ld switches to create android-x86 binaries on Ubuntu box.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.