I\'m recompiling some executable for Android 5.0 as it requires executables to be PIE
. I was able to recompile it for ARM
with just adding some argumen
Google's NDK tool contain some info about PIE usage. Visit build/core/build-binary.mk, see line 209. It says:
# enable PIE for executable beyond certain API level, unless "-static"
I guess, it is linux dynamic link principle's limit. Because Android interpreter (/system/bin/linker) determining which address elf file to be loaded in a static linked file has no interpreter, elf file will be mapped to memory into a fixed address by linux kernel. Here is a discuss about this change Google issue
If I have any mistake please figure it out:)