Bug #4157

Not prepared for Android 5.0 -- not PIE enabled

Added by ompemi about 3 years ago. Updated about 3 years ago.

Status:NewStart date:11/26/2014
Priority:HighDue date:
Assignee:-% Done:

0%

Category:-
Target version:-
Component:

Description

With the new version of android 5.0, it gives you the error:

"Failed to execute ffmpeg. Returned 1. Error message: error: only position independent executables (PIE) are supported."

Really soon all high-end devices will update, and Google Nexus has already updated, making my app fail in all Android 5.0 devices :(

It seems the Android team decided not to allow any executable without PIE suppport. And the worst part, is that PIE supported will give a segfault to versions before 4.1.

So the solution is to have two binaries, and use each one depending on the version as explained in this post: http://stackoverflow.com/a/24880209 .

Just wanted to tell you give you the heads up. The fix is to generate two ffmpeg binary, one normal and the other modifying the configure_ffmpeg.sh:

---extra-cflags="-I../x264 -mfloat-abi=softfp -mfpu=neon" \
---extra-ldflags="-L../x264" \
--extra-cflags="-I../x264 -I../yasm -mfloat-abi=softfp -mfpu=neon -fPIE" \
--extra-ldflags="-L../x264 -L../yasm -fPIE -pie" \

Cheers,
Omar


Related issues

Copied to android-ffmpeg-java - Bug #5615: Not prepared for Android 5.0 -- not PIE enabled New 11/26/2014

History

#1 Updated by n8fr8 about 3 years ago

thanks... we'll be working on this over the next few weeks. We have already implemented PIE support for Orbot/Tor binaries.

Also available in: Atom PDF