arthenica / ffmpeg-kit

FFmpeg Kit for applications. Supports Android, Flutter, iOS, Linux, macOS, React Native and tvOS. Supersedes MobileFFmpeg, flutter_ffmpeg and react-native-ffmpeg.
https://arthenica.github.io/ffmpeg-kit
GNU Lesser General Public License v3.0
4.4k stars 590 forks source link

A large number of permission denied errrors #908

Closed pmahala closed 9 months ago

pmahala commented 9 months ago

Description I am trying to compile ffmpeg for android using prompt

./android.sh -d --lts --disable-x86 --disable-x86-64 --disable-arm-v7a --disable-arm-v7a-neon --enable-gpl

Current behavior I am getting this output in my terminal

image

Logs ` INFO: Using Android NDK v22.1.7171670 provided at /mnt/d/downloads/ndk-linux/android-ndk-r22b

INFO: Build options: -d --lts --disable-x86 --disable-x86-64 --disable-arm-v7a --disable-arm-v7a-neon --enable-gpl

INFO: Building ffmpeg-kit react.native.v6.0.2-6-g80d6af6 LTS debug library for Android: Wed Dec 27 10:41:14 IST 2023

INFO: Custom library 1 not detected

INFO: Downloading the source code of ffmpeg and external libraries.

DEBUG: Downloading gnu config source.

INFO: gnu config already downloaded. Source folder found at /mnt/d/FFMPEG/ffmpeg-kit/.tmp/source/config

DEBUG: Downloading library source: ffmpeg

DEBUG: Checking if ffmpeg is already downloaded at /mnt/d/FFMPEG/ffmpeg-kit/src/ffmpeg

INFO: ffmpeg library already downloaded

INFO: ffmpeg already downloaded. Source folder found at /mnt/d/FFMPEG/ffmpeg-kit/src/ffmpeg

DEBUG: Downloading library cpu-features

DEBUG: Downloading library source: cpu-features

DEBUG: Checking if cpu-features is already downloaded at /mnt/d/FFMPEG/ffmpeg-kit/src/cpu-features

INFO: cpu-features library already downloaded

INFO: cpu-features already downloaded. Source folder found at /mnt/d/FFMPEG/ffmpeg-kit/src/cpu-features

INFO: Starting new build for arm64-v8a on API level 21 at Wed Dec 27 10:41:14 IST 2023

INFO: Enabled library cpu-features will be built

DEBUG: Checking if cpu-features is already built and installed at /mnt/d/FFMPEG/ffmpeg-kit/prebuilt/android-arm64-lts/cpu-features

INFO: cpu-features library is already built and installed

INFO: Flags detected for cpu-features: already installed=1, rebuild requested by user=, will be rebuilt due to dependency update=


INFO: Building ffmpeg for with the following environment variables

SHELL=/bin/bash GPL_ENABLED=yes WSL2_GUI_APPS_ENABLED=1 WSL_DISTRO_NAME=Ubuntu binary_input=/home/paragmahala/.sdkman/tmp/gradle-7.3.3.bin DETECTED_NDK_VERSION=22.1.7171670 JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64/ SDKMAN_CANDIDATES_DIR=/home/paragmahala/.sdkman/candidates NAME=PC-141Parag PWD=/mnt/d/FFMPEG/ffmpeg-kit LOGNAME=paragmahala zip_output=/home/paragmahala/.sdkman/tmp/gradle-7.3.3.zip TOOLCHAIN_ARCH=arm64 HOME=/home/paragmahala LANG=C.UTF-8 WSL_INTEROP=/run/WSL/350_interop LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:.tar=01;31:.tgz=01;31:.arc=01;31:.arj=01;31:.taz=01;31:.lha=01;31:.lz4=01;31:.lzh=01;31:.lzma=01;31:.tlz=01;31:.txz=01;31:.tzo=01;31:.t7z=01;31:.zip=01;31:.z=01;31:.dz=01;31:.gz=01;31:.lrz=01;31:.lz=01;31:.lzo=01;31:.xz=01;31:.zst=01;31:.tzst=01;31:.bz2=01;31:.bz=01;31:.tbz=01;31:.tbz2=01;31:.tz=01;31:.deb=01;31:.rpm=01;31:.jar=01;31:.war=01;31:.ear=01;31:.sar=01;31:.rar=01;31:.alz=01;31:.ace=01;31:.zoo=01;31:.cpio=01;31:.7z=01;31:.rz=01;31:.cab=01;31:.wim=01;31:.swm=01;31:.dwm=01;31:.esd=01;31:.jpg=01;35:.jpeg=01;35:.mjpg=01;35:.mjpeg=01;35:.gif=01;35:.bmp=01;35:.pbm=01;35:.pgm=01;35:.ppm=01;35:.tga=01;35:.xbm=01;35:.xpm=01;35:.tif=01;35:.tiff=01;35:.png=01;35:.svg=01;35:.svgz=01;35:.mng=01;35:.pcx=01;35:.mov=01;35:.mpg=01;35:.mpeg=01;35:.m2v=01;35:.mkv=01;35:.webm=01;35:.webp=01;35:.ogm=01;35:.mp4=01;35:.m4v=01;35:.mp4v=01;35:.vob=01;35:.qt=01;35:.nuv=01;35:.wmv=01;35:.asf=01;35:.rm=01;35:.rmvb=01;35:.flc=01;35:.avi=01;35:.fli=01;35:.flv=01;35:.gl=01;35:.dl=01;35:.xcf=01;35:.xwd=01;35:.yuv=01;35:.cgm=01;35:.emf=01;35:.ogv=01;35:.ogx=01;35:.aac=00;36:.au=00;36:.flac=00;36:.m4a=00;36:.mid=00;36:.midi=00;36:.mka=00;36:.mp3=00;36:.mpc=00;36:.ogg=00;36:.ra=00;36:.wav=00;36:.oga=00;36:.opus=00;36:.spx=00;36:.xspf=00;36: WAYLAND_DISPLAY=wayland-0 FFMPEG_KIT_BUILD_TYPE=android API=21 FFMPEG_KIT_DEBUG=-g SED_INLINE=sed -i LESSCLOSE=/usr/bin/lesspipe %s %s ANDROID_HOME=/mnt/d/Android TERM=xterm-256color TOOLCHAIN=linux-x86_64 LESSOPEN=| /usr/bin/lesspipe %s USER=paragmahala LIB_INSTALL_BASE=/mnt/d/FFMPEG/ffmpeg-kit/prebuilt/android-arm64-lts ARCH=arm64-v8a ORIGINAL_API=16 SDKMAN_DIR=/home/paragmahala/.sdkman DISPLAY=:0 SHLVL=2 ANDROID_SDK_ROOT=/usr/lib/android-sdk/ SDKMAN_CANDIDATES_API=https://api.sdkman.io/2 FFMPEG_KIT_TMPDIR=/mnt/d/FFMPEG/ffmpeg-kit/.tmp XDG_RUNTIME_DIR=/run/user/1000/ WSLENV= BASEDIR=/mnt/d/FFMPEG/ffmpeg-kit ANDROID_NDK_ROOT=/mnt/d/downloads/ndk-linux/android-ndk-r22b XDG_DATA_DIRS=/usr/local/share:/usr/share:/var/lib/snapd/desktop PATH=/home/paragmahala/.sdkman/candidates/gradle/current/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/lib/wsl/lib:/mnt/c/Program Files/WindowsApps/MicrosoftCorporationII.WindowsSubsystemForLinux_2.0.9.0_x64__8wekyb3d8bbwe:/mnt/c/Program Files/Common Files/Oracle/Java/javapath:/mnt/c/Windows/System32:/mnt/c/Windows/System32/WindowsPowerShell/v1.0:/mnt/d/nvm:/mnt/c/Program Files/nodejs:/mnt/c/Users/parag.mahala.TWEAKORG/AppData/Roaming/npm:/mnt/c/WINDOWS/system32/config/systemprofile/AppData/Roaming/npm:/mnt/c/Users/parag.mahala.TWEAKORG/AppData/Local/Pub/Cache/bin:/mnt/d/GitCLI/:/mnt/c/Flutter/flutter/bin:/mnt/c/Users/parag.mahala/AppData/Local/Microsoft/WindowsApps:/mnt/c/Users/parag.mahala/AppData/Local/GitHubDesktop/bin:/snap/bin:/usr/lib/jvm/java-8-openjdk-amd64//bin:/mnt/d/Android/cmdline-tools/cmdline-tools:/mnt/d/Android/cmdline-tools/cmdline-tools/bin:/mnt/d/Android/platform-tools DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus SDKMAN_PLATFORM=linuxx64 FFMPEG_KIT_LTS_BUILD=1 HOSTTYPE=x86_64 PULSESERVER=unix:/mnt/wslg/PulseServer OLDPWD=/mnt/d/FFMPEG/ffmpeg-kit/src =/usr/bin/env

INFO: System information

INFO: Linux PC-141Parag 5.15.133.1-microsoft-standard-WSL2 #1 SMP Thu Oct 5 21:02:42 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux


INFO: Building ffmpeg without native camera API which is not supported on Android API Level 21

INFO: Enabling library cpu-features

INFO: Cleaning workspace for ffmpeg

Updated 0 paths from the index Updated 0 paths from the index Updated 1 path from the index Updated 1 path from the index Updated 3 paths from the index

INFO: Enabled custom ffmpeg-kit protocols

./configure: 1: eval: aac_adtstoasc_bsf =yes: Permission denied ./configure: 1: eval: av1_frame_merge_bsf =yes: Permission denied ./configure: 1: eval: av1_frame_split_bsf =yes: Permission denied ./configure: 1: eval: av1_metadata_bsf =yes: Permission denied ./configure: 1: eval: chomp_bsf =yes: Permission denied ./configure: 1: eval: dump_extradata_bsf =yes: Permission denied ./configure: 1: eval: dca_core_bsf =yes: Permission denied ./configure: 1: eval: dts2pts_bsf =yes: Permission denied ./configure: 1: eval: dv_error_marker_bsf =yes: Permission denied ./configure: 1: eval: eac3_core_bsf =yes: Permission denied ./configure: 1: eval: extract_extradata_bsf =yes: Permission denied ./configure: 1: eval: filter_units_bsf =yes: Permission denied ./configure: 1: eval: h264_metadata_bsf =yes: Permission denied ./configure: 1: eval: h264_mp4toannexb_bsf =yes: Permission denied ./configure: 1: eval: h264_redundant_pps_bsf =yes: Permission denied ./configure: 1: eval: hapqa_extract_bsf =yes: Permission denied ./configure: 1: eval: hevc_metadata_bsf =yes: Permission denied ./configure: 1: eval: hevc_mp4toannexb_bsf =yes: Permission denied ./configure: 1: eval: imx_dump_header_bsf =yes: Permission denied ./configure: 1: eval: media100_to_mjpegb_bsf =yes: Permission denied ./configure: 1: eval: mjpeg2jpeg_bsf =yes: Permission denied ./configure: 1: eval: mjpega_dump_header_bsf =yes: Permission denied ` . . . a big list of permission denieds. I just cut it short for the brevity. FULL log file is of size 232 MB cant upload here . . . ./configure: 1: eval: ipfs_gateway_protocol =yes: Permission denied ./configure: 1: eval: ipns_gateway_protocol =yes: Permission denied ./configure: 1: eval: aac_adtstoasc_bsf _checking=inprogress: Permission denied ./configure: 1: eval: _deps_checking=inprogress: Permission denied ./configure: 1: eval: $ _deps_deps_checking=inprogress: Permission denied ./configure: 1: eval: 20156 _deps_deps_deps_checking=inprogress: Permission denied ./configure: 1: eval: 20156 _deps_deps_deps_any0156 _deps_deps_deps_deps_checking=inprogress: Permission denied ./configure: 1: eval: 20156 _deps_deps_deps_any0156 _deps_deps_deps_deps_any0156 _deps_deps_deps_any0156 _deps_deps_deps_deps_deps_checking=inprogress: Permission denied ./configure: 1: eval: 20156 _deps_deps_deps_any0156 _deps_deps_deps_deps_any0156 _deps_deps_deps_any0156 _deps_deps_deps_deps_deps_any0156 _deps_deps_deps_any0156 _deps_deps_deps_deps_any0156 _deps_deps_deps_any0156 _deps_deps_deps_deps_deps_deps_checking=inprogress: Permission denied ./configure: 1: eval: 20156 _deps_deps_deps_any0156 _deps_deps_deps_deps_any0156 _deps_deps_deps_any0156 _deps_deps_deps_deps_deps_any0156 _deps_deps_deps_any0156 _deps_deps_deps_deps_any0156 _deps_deps_deps_any0156 _deps_deps_deps_deps_deps_deps_any0156 _deps_deps_deps_any0156 _deps_deps_deps_deps_any0156 _deps_deps_deps_any0156 _deps_deps_deps_deps_deps_any0156 _deps_deps_deps_any0156 _deps_deps_deps_deps_any0156 _deps_deps_deps_any0156 _deps_deps_deps_deps_deps_deps_deps_checking=inprogress: File name too long

then its filled with these deps

Environment

pmahala commented 9 months ago

I think using Windows WSL is a lot buggier for compilation. plus there is this tendency by windows system to change line endings to non-unix friendly format. I installed Ubuntu on a virtual machine and atleast that helped me get rid of that issue

TLDR: DONT USE WSL TO COMPILE

tanersener commented 6 months ago

You're correct. Other users have also reported similar issues when compiling the Android library on Windows/WSL. We've made a note about it in our NDK Compatibility wiki.