整整快一年没有写博客了。近期基于Google开源的WebRTC项目做了一款音视频聊天的即时通信项目,期间在下载WebRTC代码时就碰到了一些问题。在此以作记录,也希望可以帮助到正在下载编译WebRTC代码中碰到类似问题的童鞋们

1). 准备环境

1. Ubuntu14.04 LTS 系统

2. 准备一个稳定的速度还能够的VPN 或者 VPS ,这个非常重要。大家都懂,大部分下载代码失败都是由于訪问google服务失败导致的.(本人用的Digital Ocean,
之前试过几个VPN都以失败而告终,蛋都碎了。要么是不稳定。要么速度很慢。最长一次用了15个小时都没有下载成功)

3. 安装下载$编译webrtc代码所需工具

a. jdk (本人用的  sun jdk1.6.0_45)

jdk下载路径:  http://ghaffarian.net/downloads/Java/JDK/

配置到环境变量中

b. git  ( 版本号 1.9.1 )

安装:  sudo apt-get install git

c. gclient

1.安装: git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git

2.配置到环境变量中 ,至于怎么配置。不知道的google一下

d. 安装例如以下工具 ( sudo apt-get install ..)

g++ (>= 4.2)

python (>= 2.4)

libnss3-dev >= 3.12

libasound2-dev

libpulse-dev

libjpeg62-dev

libxv-dev

libgtk2.0-dev

libexpat1-dev

For 32-bit builds on a 64-bit system:

lib32asound2-dev

ia32-libs

2). 下载代码

1.同步WebRTC代码

1.创建WebRTC文件夹

mkdir WebRTC

cd WebRTC

2.初始化gclient

gclient config http://webrtc.googlecode.com/svn/trunk

3. 设计目标系统版本号的配置

echo "target_os = ['android', 'unix']" >> .gclient

4. sync代码

gclient sync --nohooks

( 煎熬的一步,我同步下来的代码有7.1G之大,里面包含NDK、SDK等其它tools   之前用VPN都败在这里,后来用VPS,仅仅用了6分多钟。哎。说点什么呢......尼玛,国内程序猿就是苦逼)

注意。若长时间出现  Still working on等信息,请不要中断或者关闭,它依旧在执行。假设你这里中断了,那么之前下载的东西会所有删除。然后又得又一次sync一遍

3). 编译代码

1.设置编译环境

1. cd trunk

2. source ./build/android/envsetup.sh

3.export GYP_DEFINES="$GYP_DEFINES OS=android"

2. 下载编译所依赖的包或工具,(这里又会下载一大堆东西 如 Ant.)

./build/install-build-deps.sh  (trunk文件夹下)

3. gclient runhooks --force (下载编译所需的build文件等信息)

4. 编译 ( trunk文件夹下 )

编译Debug版:  ninja -C out/Debug

编译Release版: ninja -C out/Release

基于以上步骤。假设网络能正常訪问google服务的话。一般都不会出现其它的问题。假设真碰到了问题。不要怕。一般依据错误信息就能够知道对应的原因。

不知道的google一下

编译成功之后 在 out/Debug 或者 out/Release文件夹下看到对应的demo安装包  如Debug文件夹下,当中就有 AppRTCDemo-debug.apk 和 WebRTCDemo-debug.apk

AppRTCDemo程序的代码就再 trunk/talk/examples/android/ 文件夹下

注意,AppRTCDemo 与 WebRTCDemo的差别

WebRTCDemo仅仅是局域网内的点对点。知道对方的ip和port号就能够对打,  不须要server,  AppTRCDemo是须要server的,能够局域网,或者广域网

于2014年7月23日下载的最新代码。没有编译之前的 7.1G。假设有人由于种种原因没能把代码下载下来的,我到时能够共享你一份。由于代码还在自己机子上,到时备份一份到云盘上面

AppRTCDemoproject源代码:

点击打开链接

WebRTC源码:(这里是没有编译之前的代码。编译之后预计9.6G左右,请自行下载代码并编译)

链接: 点击打开链接  password: vp7b

最后附效果图一张,有图有真相哦

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2hlbnlhZmVpNjE3/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

Ubuntu14.04编译WebRTC For Android代码 2014-07-24的更多相关文章

  1. Ubuntu14.04编译安装mysql5.6.26

    Ubuntu14.04编译安装mysql5.6.26 (1)安装编译源码需要的包 sudo apt-get install make cmake gcc g++ bison libncurses5-d ...

  2. VLC For Android Ubuntu14.04编译环境搭建

    VLC多媒体播放器(英语:VLC media player,最初为VideoLAN Client.是VideoLAN计划的开放源码多媒体播放器.)支持众多音频与视频解码器及文件格式,并支持DVD影音光 ...

  3. ubuntu14.04 编译安装CPU版caffe

      本文,试图中一个干净的ubuntu14.04机器上安装caffe的cpu版本. http://blog.csdn.net/sinat_35188997/article/details/735304 ...

  4. ubuntu14.04 编译安装highpoint rocketraid 2720驱动

    highpoint官方只有ubuntu12.10驱动,对于ubuntu14.04或者12.04,需要手工编译安装驱动. 基本步骤: 1.下载rocketraid 2720驱动源代码 2.在一台装有ub ...

  5. Ubuntu14.04创建无线WiFi,android可以连接上网

    前提条件: ubuntu14.04 unity,已经通过有线连接到internet 一般环境下创建的wifi热点android设备是无法识别的,网上说通过ap-hotspot方式创建出来的热点手机可以 ...

  6. Ubuntu14.04 编译 Android 5.1.1源码(采用国内镜像)

    欢迎转载,转载请注明出处: http://www.cnblogs.com/lanrenxinxin/p/5424554.html 之前就有编译android源码的想法,但是由于有GFW的存在,又没有梯 ...

  7. 编译webrtc for android库与apk

    git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git export PATH=`pwd`/depot_t ...

  8. ubuntu14.04 编译安装gcc-5.3.0

    最近编译个源码,要求对C++14的支持了,就GCC的编译安装最新的5.3.0,整个过程以root用户进行. 1.下载GCC源码,属于事后文档整理,已经不知道从哪下载了. 2.解压:tar -zxvf ...

  9. 64bit ubuntu14.04编译PlatinumKit出现的arm-linux-androideabi-g++: not found错误解决方法

    编译命令:scons target=arm-android-linux build_config=Release 出现错误: scons: Reading SConscript files ...** ...

随机推荐

  1. [Java] 总结1.5/1.6/1.7版本的特性

    开发过程中接触到了从jdk1.5---jdk1.7的使用,在不同的阶段,都使用过了jdk的一些新特性,操作起来更加方面啦!特此总结了下,以下是测试代码: JDK1.5新特性: 1.自动装箱与拆箱: I ...

  2. css3 animate写的超炫3D转换

    上一篇中介绍了animate的基本的属性,这一篇讲的则是关于animate以及transforms的使用 <!DOCTYPE html><html lang="en&quo ...

  3. JDBC基础01

    今日知识 1. JDBC基本概念2. 快速入门3. 对JDBC中各个接口和类详解 JDBC: 1. 概念:Java DataBase Connectivity Java 数据库连接, Java语言操作 ...

  4. 从谷歌官网下载android 6.0源码、编译并刷入nexus 6p手机

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/fuchaosz/article/details/52473660 1 前言 经过一周的奋战,终于从谷 ...

  5. 洛谷P2607 [ZJOI2008]骑士(树形dp)

    题目描述 Z国的骑士团是一个很有势力的组织,帮会中汇聚了来自各地的精英.他们劫富济贫,惩恶扬善,受到社会各界的赞扬. 最近发生了一件可怕的事情,邪恶的Y国发动了一场针对Z国的侵略战争.战火绵延五百里, ...

  6. WordPress浏览次数统计插件:WP-Postviews使用

    WP-Postviews使用 1.要让你的博客在页面上显示浏览次数,你需要修改你博客当前使用的主题,在主循环中插入以下代码: 1 <?php if(function_exists('the_vi ...

  7. Android stroke 边框线 某一边

    有时候需要给View加边框线,我们经常是四边一起加,就像这样: <shape xmlns:android="http://schemas.android.com/apk/res/and ...

  8. 【原创】IBM Websphere 报错:JSPG0120E: 为 pageEncoding 属性和匹配 URI 模式的配置元素指定不同的值是非法的。

    websphere中间件,在打开一个jsp页面时报: IBM Websphere 报错:JSPG0120E: 为 pageEncoding 属性和匹配 URI 模式的配置元素指定不同的值是非法的. . ...

  9. C#自定义控件实现控件随窗口大小改变

    1.新建用户控件,取名MyForm. 2.将默认的UserControl改成Form 3.在类中添加以下代码 private float X, Y; //获得控件的长度.宽度.位置.字体大小的数据 p ...

  10. 00--Linux常用命令大全

    系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 - (SMBIOS ...