编译FFmpeg
1.阿里云主机 ubuntu 14.04 64位
2.安装 Xshell Xftp
3.上传NDK,FFmpeg
cd /usr/ 切换到usr目录
把ndk拖入窗口 linux版的 不是Windows版的
4.ndk配置环境变量
vi
vim 可以查看是否安装vim 显示vim的版本信息
sudo apt remove vim 把vim移除
apt-get install vim-gtk 或者 yum -y install vim*安装vim
vim jason.txt 会提示没找到
我们需要配置vim的环境变量
sudo apt-get install vim-gtk 或者yum -y install vim*没用
apt-get update 更新
再次 (ubuntu上 sudo apt-get install vim-gtk |centos上yum -y install vim* )
sudo指的是superuser
(安装东西区别
CentOS用yum或rpm安装软件包
apt-get是Debian和Ubuntu用的
)
vim操作
命令模式是不能写东西 要写东西 输入 i
不保存退出(强制退出) shift +:q!
保存退出 shift+ z z 或者 shift+:wq!
进入编辑模式 输入i
退出编辑模式进入命令模式 Esc
Vim额外配置
打开vim配置
vim /etc/vim/vimrc (yum安装的 vim /etc/vimrc)
set nu // 在左侧行号
set tabstop //tab 长度设置为 4
set nobackup //覆盖文件时不备份
set cursorline //突出显示当前行
set ruler //在右下角显示光标位置的状态行
set autoindent //自动缩进
在命令模式下 x删除 dd 删除行
cd ../
chmod 777 -R ndk 给包以及子目录设置权限最高
ls -l 可以查看ndk的权限
在ndk文件旁边新建一个jason文件
把ffmpeg考入
cd~
ls
vim ~/.bashrc 进入配置环境变量(~代表用户)
export NDKROOT=/home/software/android-ndk-r10e
export PATH=$NDKROOT:$PATH
ESC退出 shift zz
source ~/.bashrc 更新环境变量
ndk-build -v
ndk-build
reset 清空命令行
cd /home/software/android-ndk-r10e 到解压目录下
ls
../
ndk解压完毕
========
解压ffmpeg
到jason目录下
unzip
ffmpeg-2.6.9.zip
发现没有安装unzip
sudo apt-get install unzip
unzip 安装成功!
unzip ffmpeg-2.6.9.zip
8 编译ffmpeg
shell脚本文件
修改(ndk在ubuntu上的路径)NDK=
chmod 777 -R ffmpeg-2.6.9 设置权限
切换到ffmpeg-2.6.9目录 执行刚刚添加的文件 ./build_android.sh
出现文件格式问题
两种解决方式
touch build_android.sh 在linux上新建文件
然后下载到本地
把代码考入再覆盖
同时 新建的文件需要执行权限
(没有用)
dos2unix
安装dos2unix
apt-get install dos2unix
export NDKROOT=/usr/ndk/android-ndk-r10e
export PATH=$NDKROOT:$PATH
如果报make comand no found
就是没有安装 make这个软件
安装软件
apt-get install make
========================================================
总结:
1.vim 一般会自带
sudo apt remove vim 移除
sudo apt-get install vim-gtk 安装
vim /etc/vim/vimrc 配置vim
命令模式到编辑模式 i
编辑模式到命令模式 esc
不保存退出 :q!
保存退出 :wq!或者 shift+z z
增加代码
set nu // 在左侧行号
set tabstop //tab 长度设置为 4
set nobackup //覆盖文件时不备份
set cursorline //突出显示当前行
set ruler //在右下角显示光标位置的状态行
set autoindent //自动缩进
===========================================
在某个文件下 比如home目录下
新建ndk 存放linux版的ndk源码压缩包
新建jason 存放 ffmpeg 的源码压缩包
cd~
ls
vim ~/.bashrc 进入配置环境变量(~代表用户)
增加代码
export NDKROOT=/home/software/android-ndk-r10e
export PATH=$NDKROOT:$PATH
ESC退出 shift zz
source ~/.bashrc 更新环境变量
ndk-build -v
ndk-build
2.unzip
sudo apt-get install unzip 安装unzip软件
3.dos2unix
apt-get install dos2unix 安装 dos2unix软件
4.make
apt-get install make
configure --help
rm -rf android 会把android以及android这个目录以下的子文件都干掉
configure修改
======================================================
修改前(用#注释掉)
#SLIBNAME_WITH_MAJOR='$(SLIBNAME).$(LIBMAJOR)'
#LIB_INSTALL_EXTRA_CMD='$$(RANLIB) "$(LIBDIR)/$(LIBNAME)"'
#SLIB_INSTALL_NAME='$(SLIBNAME_WITH_VERSION)'
#SLIB_INSTALL_LINKS='$(SLIBNAME_WITH_MAJOR) $(SLIBNAME)'
修改后
SLIBNAME_WITH_MAJOR='$(SLIBPREF)$(FULLNAME)-$(LIBMAJOR)$(SLIBSUF)'
LIB_INSTALL_EXTRA_CMD='$$(RANLIB)"$(LIBDIR)/$(LIBNAME)"'
SLIB_INSTALL_NAME='$(SLIBNAME_WITH_MAJOR)'
SLIB_INSTALL_LINKS='$(SLIBNAME)'
zip android.zip android
Component options 下面的代码 比如 --disable-avfilter disable libavfilter build 不启用
# libraries, in linking order 可以查看依赖 比如avresample_deps
如果SYSROOT 是19 很多系统函数会找不到 比如LOG2(坑)
从手机到文件(貌似没用)
adb shell
su
adb remount 没权限
重连手机 就有了