介绍
汇总一下我在编译compile-ffmpeg.sh文件中出现的各种错误问题以及解决方法。
没办法,其他地方都没有太多问题,就是在这一步的时候太多问题了。
很多问题其实我们可以在github上的Issues · bilibili/ijkplayer (github.com) 中找到大家的解决思路。
问题汇总
1.找不到ANDROID-NDK
编译过程中提示找不到Android-NDK
build on Linux x86_64
ANDROID_NDK=
You must define ANDROID_NDK before starting.
They must point to your NDK directories.
解决方法:
ijkplayer
读取不到ANDROID_NDK
我们需要修改环境配置中的ndk
的命名方式。
root@LAPTOP-141OG4MA:/# vim /etc/profile
然后在打开的界面中配置下面的内容:
将我们针对ndk
路径的命名改为:ANDROID_NDK
就可以了。
然后执行:source /etc/profile
刷新配置。
2. 没有文件读取权限
没有文件修改权限。我们在创建文件夹或文件的时候提示权限不足。但是添加sudo后,又提示找不到ndk命令。
我们可以进入root模式下,将整个文件夹的读取权限全部开放。
示例结果 :root@LAPTOP-141OG4MA:/home/zinyan# chmod 777 ijkplayer/ -R
给ijkplayer
文件夹开放全部的编辑读写权限。 后面的-R
代表遍历文件夹里面的子文件对象。
3. ffmpeg-armv5/toolchain/touch': No such file or directory
Toolchain installed to /home/zinyan/ijkplayer/android/contrib/build/ffmpeg-armv5/toolchain.
touch: cannot touch '/home/zinyan/ijkplayer/android/contrib/build/ffmpeg-armv5/toolchain/touch': No such file or directory
找不到armv5
的toolchain/touch
文件和目录。需要我们安装sudo apt-get install python
。然后再尝试。
因为在这一步的时候,是通过python 将ffmpeg的库采用ndk 串联成一个工具链。
其实缺少的就是toolchain(工具链)。 并不是说的每个指令集下面缺乏toolchain文件夹让我们主动创建的问题。
4. check ffmpeg env 错误 bad variable name
错误如下:你也许不是出现在NVIDIA
也许出现在在Common
等等。
或出现在do-compile-openssl.sh
脚本中
解决方法很简单:sudo dpkg-reconfigure dash
然后在弹出的说明中,选择NO
就可以了。
当我处理完之后,compile-ffmpeg.sh 文件正常编译结束了。
下篇介绍编译compile-ijk.sh
库吧。
评论区