移植rtmpdump(librtmp)到android
编译环境:(rtmpdump-master.zip和Polar SSL版本已经打包上传,具体路径在http://download.csdn.net/detail/gyley2/5721061)
win7操作系统
centos 6.0-64位虚拟机
android-ndk-r8e,下载地址:http://developer.android.com/tools/sdk/ndk/index.html
rtmpdump-master.zip,下载路径:https://github.com/S74ck3r/rtmpdump
Polar SSL,下载路径:https://polarssl.org/download,我用的是polarssl-1.2.0-gpl.tgz
当然你可以使用openssl作为ssl的库,下载路径为:https://github.com/aluvalasuman/OpenSSL1.0.1cForAndroid,使用NDK-bulid在此不作介绍,网上搜一下。
编译开始:
1、下载android-NDK,配置android编译环境。不会的问google。我的NDK环境在/home/android-ndk-r8e路径。
2、在home路径下创建rtmpdump文件夹路径,并且赋权限。
mkdir /home/rtmpdump
chmod 777 -R /home/rtmpdump
3、配置NDK standalone 交叉编译环境。
/home/android-ndk-r8e/build/tools/make-standalone-toolchain.sh platform=android-14 --install-dir=/home/rtmpdump/android-toolchain --system=linux-x86_64
4、在环境变量中添加android NDK的交叉编译环境。
export PATH="/home/rtmpdump/android-toolchain/bin:$PATH
5、下载Polar SSL,并且解压。进入解压后的Polar SSL路径
6、编译Polar SSL。
make CC=arm-linux-androideabi-gcc APPS=
如果系统提示找不到arm-linux-androideabi-gcc:1、export一下,看看”/home/rtmpdump/android-toolchain/bin“是否存在PATH路径下。2、进入“/home/rtmpdump/android-toolchain/bin”看看arm-linux-androideabi-gcc是否存在。如果上两步都没有问题,可以使用“make CC=/home/rtmpdump/android-toolchain/bin/arm-linux-androideabi-gcc APPS=”进行编译。
7、安装Polar SSL。
make install DESTDIR=/home/rtmpdump/android-toolchain/sysroot
8、下载rtmpdump版本,并且解压,进入rtmpdump解压后的目录。
9、编译(librtmp为动态库)
make SYS=android CROSS_COMPILE=arm-linux-androideabi- INC="-I/home/rtmpdump/android-toolchain/sysroot/include" CRYPTO=POLARSSL
同样,如果提示找不到问题,处理方法同6.
如果想使用librtmp的静态库,使用
make SYS=android CROSS_COMPILE=arm-linux-androideabi- INC="-I/home/compiler/rtmpdump/android-toolchain/sysroot/include" CRYPTO=POLARSSL SHARED=
搞完,收工。回家睡觉。
移植rtmpdump(librtmp)到android的更多相关文章
- Unity3D移植到自己的Android程序
用Unity3D开发需要把动画效果移植到现有的APP上面.Unity for Android 比较特殊,Unity for IOS 打包是将XCODE工程直接交给开发者,开发者可以在工程的基础上继续添 ...
- Android学习——移植tr069程序到Android平台
原创作品,转载请注明出处,严禁非法转载.如有错误,请留言! email:40879506@qq.com 声明:本系列涉及的开源程序代码学习和研究,严禁用于商业目的. 如有任何问题,欢迎和我交流.(企鹅 ...
- [原]零基础学习SDL开发之移植SDL2.0到Android
在[原]SDL开发教程我们知道了如何在pc下使用SDL进行开发,在android上面是否一样可以使用呢?答案是肯定的. 下面我们进行移植SDL到Android,这里都是基于SDL最新版进行移植的,在E ...
- Android平台下OpenCV移植与使用---基于C/C++
在<Android Studio增加NDK代码编译支持--Mac环境>和<Mac平台下Opencv开发环境搭建>两篇文章中,介绍了如何使用NDK环境和Opencv环境搭建与测试 ...
- 第一章 Android系统移植与驱动开发概述
本书第一章首先简单概要地介绍了关于Android系统移植和驱动开发的相关内容. 所谓“移植”是指为特定的自己的设备,如手机定制Android的过程.自己开发一些程序(移植)装载在设备上,使得Andro ...
- Android系统移植与驱动开发----第一章
第一章 Android系统移植与驱动开发 Android源代码定制完全属于自己的嵌入式系统,但是支持的设备不多,所以要移植,而在移植的过程中使用的不得不提的是驱动开发. Android系统构架主要包括 ...
- RTMPdump(libRTMP)源代码分析 4: 连接第一步——握手(Hand Shake)
===================================================== RTMPdump(libRTMP) 源代码分析系列文章: RTMPdump 源代码分析 1: ...
- RTMPdump(libRTMP) 源代码分析 10: 处理各种消息(Message)
===================================================== RTMPdump(libRTMP) 源代码分析系列文章: RTMPdump 源代码分析 1: ...
- RTMPdump(libRTMP) 源代码分析 9: 接收消息(Message)(接收视音频数据)
===================================================== RTMPdump(libRTMP) 源代码分析系列文章: RTMPdump 源代码分析 1: ...
随机推荐
- 最新HTML BroadcastChannel API引荐
HTML BroadcastChannel API 当前浏览器中只有Firefox38唯一能支持BroadcastChannel API(在编写本文的时间点),而Firefox38官方宣称要到2015 ...
- iOS7 UIKit动力学-碰撞特性UICollisionBehavior 上
我们谈到了重力上述财产UIGravityBehavior这个类. 非常明确的看法,当我们添加的属性的严重性后,,苹果UIview像掉进无底洞,地下坠,不断的加速.而如今呢,我们要在这个手机屏幕上,加入 ...
- App根据第,HTML5流行?
App根据第.HTML5流行? 引用新闻 日前,有消息称国家网信办近日将出台APP应用程序发展管理办法.中央网信办主任鲁炜在推进网络空间法治化座谈会上透露.我国将加强互联网立法,依靠严密的法律网来打造 ...
- MonkenRunner通过HierarchyViewer定位控件的方法和建议(Appium/UIAutomator/Robotium姊妹篇)
1. 背景 在使用MonkeyRunner的时候我们经常会用到Chimchat下面的HierarchyViewer模块来获取目标控件的一些信息来辅助我们测试,但在MonkeyRunner的官网上是没有 ...
- 思维方式--SMART原则
假设你的项目管理.系统架构的兴趣,请加微信订阅号"softjg",收藏此PM.建筑师的家 万事开头于你目标的设定,假设開始走错了,那么后面的路将会更加的错误.甚至于更加的努力犯错就 ...
- AngularJS + CoffeeScript
AngularJS + CoffeeScript 前端开发环境配置详解 AngularJS 号称 '第一框架' ('The first framework') 确实是名不虚传.由其从jQuery中完全 ...
- 在ubuntu下使用eclipse来调试ARM程序
该程序为外部Makefile project,导入到eclipse中来进行编译,之后使用Jlink来进行调试. 这个是因为你在编译的时候没有加-g这个标志,导致没有生成调试文件. 让你指定一个源文件. ...
- php学习之路:php在iconv功能 详细解释
iconv函数库可以完毕各种字符集间的转换,是php编程中必不可少的基础函数库. 使用方法例如以下: $string = "亲爱的朋友欢迎訪问胡文芳的博客.希望给您带来一点点的帮助!&quo ...
- beanutils通过SimpleProperty使用get或set方法赋值
public class Employee { private String firstName; private String lastName; public Employee() ...
- [置顶] 博客停止更新 && 我的大学数年
博客停止更新 前言: 这些天,一直还没有时间发表这篇博文,近期,做了一个决定:博客更新停止. 我有话说: 这些天来,还真是感谢大家的关注了.从2011年的07至今,2013年的07月,两个年头,写下了 ...