CypherpunkArmory / UserLAnd

Main UserLAnd Repository
Other
3.51k stars 391 forks source link

Bug report - [ffmpeg error while loading shared libraries: libx264.so.152: cannot enable executable stack as shared object requires: Permission denied] #1159

Open severnaside opened 4 years ago

severnaside commented 4 years ago

Describe the bug

I installed Ubuntu using UserLAnd on my Android phone. Then I installed get-iplayer from the get-iplayer PPA. After that, I checked if ffmpeg will run, but got the above error.

Steps to reproduce the behavior:

Type the following commands: sudo apt install -y software-properties-common sudo add-apt-repository ppa:jon-hedgerows/get-iplayer sudo apt update sudo apt install get-iplayer ffmpeg -h

Screenshots

N/A

Device Information

Device: [Moto G4 Plus].
Android Version: [7.0].
UserLAnd Version [2.6.5].
Device is not rooted.
Device is not running LineageOS

Please add any other context you think might help us resolve your issue. I fixed the problem by installing execstack and running queries. The stack execute bit is set for these files: /usr/lib/arm-linux-gnueabihf/libx264.so.152 /usr/lib/arm-linux-gnueabihf/x264-10bit/libx264.so.152 I cleared the executable stack flag with commands e.g.: sudo execstack -c /usr/lib/arm-linux-gnueabihf/libx264.so.* This enabled ffmpeg to work correctly. Do you need these flags set during installation of your application? If not, it would be safer if you removed the flags from these libraries.

severnaside commented 4 years ago

I did a fresh install of Ubuntu. With no additional packages installed, the above file libx264.so. is not present. I then installed only the package ffmpeg. After that, the ffmpeg error appears when running ffmpeg, referring to libx264.so. The same error occurs using Debian on UserLAnd. Maybe this is not a UserLAnd problem, but hopefully you can shed some light.

IbsterTech commented 4 years ago

How to Fix For Stremio?

ReyEndymion commented 3 months ago

I have Debian using userland, I made a project where I try to create moving stickers as fixed ones in a JavaScript script: First I tried to use wa-sticker-formatter but it requires sharp which is not available for armv7 platforms, so I wanted to use the old reliable ffmpeg, but it turns out that when installing I get:

userland@localhost: $ sudo apt install ffmpeg Reading package lists... Done Building dependency tree... Done Reading state information... Done ffmpeg is already the newest version (7:4.3.6-0+deb11u1). The following packages were automatically installed and are no longer required: javascript-common libc-ares2 libjs-highlight.js Use 'apt autoremove' to remove them. 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 6 not fully installed or removed. After this operation, 0 B of additional disk space will be used. Do you want to continue? [Y/n] y Setting up cron (3.0pl1-137) ... dpkg-statoverride: error: error creating new backup file '/var/lib/dpkg/statoverride-old': Operation not permitted dpkg: error processing package cron (--configure): installed cron package post-installation script subprocess returned error exit status 2 Setting up dbus (1.12.28-0+deb11u1) ... dpkg-statoverride: error: error creating new backup file '/var/lib/dpkg/statoverride-old': Operation not permitted dpkg: error processing package dbus (--configure): installed dbus package post-installation script subprocess returned error exit status 2 Setting up exim4-config (4.94.2-7+deb11u2) ... debconf: unable to initialize frontend: Dialog debconf: (No usable dialog-like program is installed, so the dialog based frontend cannot be used. at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 78.) debconf: falling back to frontend: Readline dpkg-statoverride: error: error creating new backup file '/var/lib/dpkg/statoverride-old': Operation not permitted dpkg: error processing package exim4-config (--configure): installed exim4-config package post-installation script subprocess returned error exit status 2 dpkg: dependency problems prevent configuration of libpam-systemd:armhf: libpam-systemd:armhf depends on dbus; however: Package dbus is not configured yet.

dpkg: error processing package libpam-systemd:armhf (--configure): dependency problems - leaving unconfigured dpkg: dependency problems prevent configuration of exim4-base: exim4-base depends on exim4-config (>= 4.94) | exim4-config-2; however: Package exim4-config is not configured yet. Package exim4-config-2 is not installed. Package exim4-config which provides exim4-config-2 is not configured yet.

dpkg: error processing package exim4-base (--configure): dependency problems - leaving unconfigured dpkg: dependency problems prevent configuration of exim4-daemon-light: exim4-daemon-light depends on exim4-base (>= 4.94.2); however: Package exim4-base is not configured yet.

dpkg: error processing package exim4-daemon-light (--configure): dependency problems - leaving unconfigured Errors were encountered while processing: cron dbus exim4-config libpam-systemd:armhf exim4-base exim4-daemon-light E: Sub-process /usr/bin/dpkg returned an error code (1)

using termux it simply lets you install ffmpeg using the pkg command and it doesn't fail, but here you have to use the apt package manager, so any solution?