microsocks icon indicating copy to clipboard operation
microsocks copied to clipboard

Android ARM compile

Open zz77 opened this issue 6 years ago • 1 comments

Hello.

I'm trying to cross-compile microsocks for android 5.1.1 with arm-linux-musleabi-gcc (from musl-cross-make). Compile is okay, but have issues with execute on my device.

Firstly i got error: error: only position independent executables (PIE) are supported.

And i added

CFLAGS += -fPIE LDFLAGS += -Wl,--dynamic-linker=/system/bin/linker -fPIE -pie

to make parametres.

After this changes and re-compiled i got another error on device:

WARNING: linker: Unsupported flags DT_FLAGS_1=0x8000000
WARNING: linker: ./microsocks has text relocations. This is wasting memory and prevents security hardening. Please fix.
CANNOT LINK EXECUTABLE: cannot locate symbol "__errno_location" referenced by "./microsocks"...

And now i dont know what to do. Can you help me with it? Please

Also i want to compile all dynamic libraries to binary, i dont know how to do it too... Sorry my english is bad, and i just only learning now about sources and compile, googled not give me any success. Thanks you for any help.

zz77 avatar Sep 07 '18 09:09 zz77

it seems your toolchain targets a different android or even libc version. i'd suggest you use musl-cross-make and compile a static binary. (hint add -static to your LDFLAGS, that may even work with the existing toolchain)

rofl0r avatar Sep 07 '18 14:09 rofl0r