WebRTC研究 (一) 编译源码

2020/4/6 23:31:43

本文主要是介绍WebRTC研究 (一) 编译源码,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

@[TOC](WebRTC研究 (一) 编译源码)

1. WebRTC 源码编译

1.1 IOS平台编译

1.1.1 WebRTC iOS framework 编译

  1. 安装 depot_tools
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
复制代码

把 depot_tools 加入环境变量

export PATH=`pwd`/depot_tools:"$PATH"
复制代码
  1. clone 源代码 创建一个文件夹用来存放 WebRTC 源代码,比如 mkdir ~/webrtc, 进入刚才创建的文件夹执行
fetch --nohooks webrtc_ios
gclient sync
复制代码

然后就是漫长的等待中... 完全 sync 完成后会在 webrtc 目录下生成一个 src 目录,进入 src 目录会看到类似 chromium.googlesource.com/external/we… 这个样的目录,只不过多了 third-party 的一些依赖文件, branch 57 之后 sync 很快哦

  1. 编译 framework 运行命令 gclient runhooks 进入 src 目录,然后执行
./tools_webrtc/ios/build_ios_libs.py
复制代码

就可以编译出 framework 文件了。 可以通过 ./tools_webrtc/ios/build_ios_libs.py --help 查看编译选项 默认会编译出全部架构的 ['arm64', 'arm', 'x64', 'x86'] 的 framework 文件,如果想要编译成静态库也可以加上 -b static_only,如果只想编译 ARM 的架构可以 ./tools_webrtc/ios/build_ios_libs.py --arch {'arm64','arm'} (老版本的目录为 tools-webrtc)

  1. 使用 Xcode 查看和编译 WebRTC 源码 WebRTC 不支持 Xcode 原生编译,用 Xcode 编译也是调用的 ninja 去编译 先生成 workspace 文件,还是进入上面提到的 src 的目录
gn gen out/ios --args='target_os="ios" target_cpu="arm64" is_component_build=false' --ide=xcode
复制代码

打开工程文件,就可以编译和查看源码了

open -a Xcode.app out/ios/all.xcworkspace
复制代码
  1. 代码更新 以后更新 webrtc 代码只需要进入 src 目录 git pull 就行, 定期的更新依赖,使用
gclient sync
复制代码


这篇关于WebRTC研究 (一) 编译源码的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程