编译环境:(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的更多相关文章

  1. Unity3D移植到自己的Android程序

    用Unity3D开发需要把动画效果移植到现有的APP上面.Unity for Android 比较特殊,Unity for IOS 打包是将XCODE工程直接交给开发者,开发者可以在工程的基础上继续添 ...

  2. Android学习——移植tr069程序到Android平台

    原创作品,转载请注明出处,严禁非法转载.如有错误,请留言! email:40879506@qq.com 声明:本系列涉及的开源程序代码学习和研究,严禁用于商业目的. 如有任何问题,欢迎和我交流.(企鹅 ...

  3. [原]零基础学习SDL开发之移植SDL2.0到Android

    在[原]SDL开发教程我们知道了如何在pc下使用SDL进行开发,在android上面是否一样可以使用呢?答案是肯定的. 下面我们进行移植SDL到Android,这里都是基于SDL最新版进行移植的,在E ...

  4. Android平台下OpenCV移植与使用---基于C/C++

    在<Android Studio增加NDK代码编译支持--Mac环境>和<Mac平台下Opencv开发环境搭建>两篇文章中,介绍了如何使用NDK环境和Opencv环境搭建与测试 ...

  5. 第一章 Android系统移植与驱动开发概述

    本书第一章首先简单概要地介绍了关于Android系统移植和驱动开发的相关内容. 所谓“移植”是指为特定的自己的设备,如手机定制Android的过程.自己开发一些程序(移植)装载在设备上,使得Andro ...

  6. Android系统移植与驱动开发----第一章

    第一章 Android系统移植与驱动开发 Android源代码定制完全属于自己的嵌入式系统,但是支持的设备不多,所以要移植,而在移植的过程中使用的不得不提的是驱动开发. Android系统构架主要包括 ...

  7. RTMPdump(libRTMP)源代码分析 4: 连接第一步——握手(Hand Shake)

    ===================================================== RTMPdump(libRTMP) 源代码分析系列文章: RTMPdump 源代码分析 1: ...

  8. RTMPdump(libRTMP) 源代码分析 10: 处理各种消息(Message)

    ===================================================== RTMPdump(libRTMP) 源代码分析系列文章: RTMPdump 源代码分析 1: ...

  9. RTMPdump(libRTMP) 源代码分析 9: 接收消息(Message)(接收视音频数据)

    ===================================================== RTMPdump(libRTMP) 源代码分析系列文章: RTMPdump 源代码分析 1: ...

随机推荐

  1. SQL 无限级分类语句

    原文:SQL 无限级分类语句 原表数据为: 此处用到了with关键字,在程序中也可以用递归实现,但觉得还是没有一条sql方便 with tb (ID,Name,ParentID,Sort) as( s ...

  2. EXCEL导入GridView,然后再汇入数据库.

    原文:EXCEL导入GridView,然后再汇入数据库. 近日项目中有一个多笔料号要输入,我做了一个用javascript复制输入框的功能,可以输入多笔料号. 但是使用者反馈,料号太多,可能几百个料号 ...

  3. CORS(跨域资源共享)跨域问题及解决

    当使用ajax跨域请求时,浏览器报错:XmlHttpRequest error: Origin null is not allowed by Access-Control-Allow-Origin.肯 ...

  4. 项目笔记---CSharp图片处理

    原文:项目笔记---CSharp图片处理 项目笔记---CSharp图片处理 最近由于项目上需要对图片进行二值化处理,就学习了相关的图片处理上的知识,从开始的二值化的意义到动态阀值检测二值化等等,并用 ...

  5. leetcode[73] Set Matrix Zeroes 将矩阵置零

    给定一个矩阵,把零值所在的行和列都置为零.例如: 1 2 3 1 3 1 1 1 操作之后变为 1 3 0 0 0 1 1 方法1: 赋值另存一个m*n的矩阵,在原矩阵为零的值相应置新的矩阵行和列为零 ...

  6. WPF随手小记之二 ——改变DataGrid样式

    大部分时候我们并不需要手动改变DataGrid的样式,因为用默认的其实也看得过去,而且在DataGrid中的数据也远比外观重要. 但总有时候,我们需要做点必要的UI修改来使DataGrid更美观. 一 ...

  7. 通过Transaction Log(fn_dblog)取回被删除的数据

    最近跟 James 讨论为何「ApexSQL Log」这个工具可以读到被删除的数据呢? 原来它是透过 Transaction Log 来读取数据的! 于是透过 Transaction Log 到网络上 ...

  8. sql内置函数pivot强大的行转列功能

    原文:sql内置函数pivot强大的行转列功能 语法: PIVOT用于将列值旋转为列名(即行转列),在SQL Server 2000可以用聚合函数配合CASE语句实现 PIVOT的一般语法是:PIVO ...

  9. STL非变易算法 - STL算法

    欢迎访问我的新博客:http://www.milkcu.com/blog/ 原文地址:http://www.milkcu.com/blog/archives/1394600460.html 原创:ST ...

  10. iOS基础 - 多媒体

    一.播放视频 iOS提供了叫做MPMoviePlayerController.MPMoviePlayerViewController的两个类,可以用来轻松播放视频 YouTobe就是用MPMovieP ...