zoukankan      html  css  js  c++  java
  • WebRTC Android版本编译

      本文简单介绍如何在Ubuntu18.04 上,编译WebRTC Android版本。

    安装工具

      需要用到depot_tools工具来下载webrtc源码。

    安装 depot_tools

      git 命令获取 depot_tools。

    # git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git

      配置坏境变量:

    # echo "export PATH=$PWD/depot_tools:$PATH" > $HOME/.bash_profile
    # source $HOME/.bash_profile

      检测配置是否成功:

    $ echo $PATH

    下载源码

    默认master分支

      默认是下载当前最新的源码,即Master分支。

    # mkdir webrtc
    # cd webrtc
    # fetch --nohooks webrtc_android
    # gclient sync

    特定分支

      如果要编译特定分支,如M74分支,需指定特定分支进行同步。拉取M74分支使用如下命令:(分支提交记录可参考WebRTC分支提交记录

    gclient sync -r cc1b32545db7823b85f5a83a92ed5f85970492c9  --force
    # commit id 可通过切换到该分支,查看git log,最上面那条记录即为当前分支最新的提交记录

    编译

    安装编译依赖

      官网只给出第一条,建议两条命令都执行。

    # ./src/build/install-build-deps.sh
    # ./src/build/install-build-deps-android.sh

    编译

     编译可指定带或不带AppRTCMobile,带AppRTCMobile生成的Debug目录较小,不带AppRTCMobile生成的文件较多,也更大。

    # source build/android/envsetup.sh
    # gn gen out/Debug --args='target_os="android" target_cpu="arm64"'
    # ninja -C out/Debug AppRTCMobile

      编译过程中,如果没有出错,即表示编译成功。

    编译组合

    a)编译arm debug版本

        gn gen out/Debug_arm --args='target_os="android" target_cpu="arm"'
        ninja -C out/Debug_arm

    b)编译arm64 debug版本

        gn gen out/Debug_arm64 --args='target_os="android" target_cpu="arm64"'
        ninja -C out/Debug_arm64

    c)编译arm release版本

        gn gen out/Release_arm --args='target_os="android" target_cpu="arm" is_debug=false'
        ninja -C out/Release_arm

    d)编译arm64 release版本

        gn gen out/Release_arm64 --args='target_os="android" target_cpu="arm64" is_debug=false'
        ninja -C out/Release_arm64

    此处在生成的out/*名字上做区别,需要自取。

    参考

      编译Android版的WebRTC
        https://blog.csdn.net/ericbar/article/details/83114015
      WebRTC iOS&OSX 库的编译
        http://www.enkichen.com/2017/05/12/webrtc-ios-build/

  • 相关阅读:
    如何获取QQ的clientkey
    自动输入QQ密码
    Ext Tree 操作类
    QQ消息记录文件压缩方法
    见过最恶心的代码,发泄一下。。。
    今天尝试获取QQ的clientkey未果,做个记号
    用c# 调用并调试c++的代码
    托盘管理 隐藏/显示/单击/右键/双击/改变位置
    在XP下是可以查看进程命令行参数的
    充分利用你的“二脑”
  • 原文地址:https://www.cnblogs.com/Hi-blog/p/11311141.html
Copyright © 2011-2022 走看看