前提:不涉及跳 - 墙html
因最新的工程配置文件(2018.10.25)vs_toolchain.py只支持vs2017(_CopyPGORuntime),须要下载vs2017git
不然在执行 gclient sync 命令时,会报“Unexpected toolchain version .....”错误web
一:安装 depot_tools
(1) 安装 WebRTC 代码下载工具 depot_tools(Google),参考页面:地址chrome
$ git clone https://chromium.googlesource.com/chromium/tools/depot_tools.gitwindows
或者直接下载解压:地址api
(2) 设置环境变量ide
二:下载安装 Windows SDK 10工具
不安装在后面生时会报缺乏dbghelp.dllgoogle
SDK地址spa
安装时只需选择windbg便可,无需所有安装
三:设置默认编译工具 IDE 版本,设置环境变量,用于生成 VS 工程文件
四:下载 WebRTC 源码
(1)在准备放置代码的目录下,启动cmd窗口
gclient config https://chromium.googlesource.com/external/webrtc --name=src
这里“src”是个人代码目录名字
(2)同步最新的代码
gclient sync
这里若是出现各类py错误,多半是环境变量设置的问题
五:编译
WebRTC 目前使用 GN 来生成构建脚本,Ninja 进行构建,因此系统平台均是。
因此网上说的经过 GYP 生成 VS 解决方案工程文件的博文都已失效,用的均为旧版本的 webrtc。
(1)生成 Ninja 工程文件
Ninja 工程文件由 GN 生成,为其选择一个放置的目录中,如 out/Debug 或者 out/Release,这里官方建议选择 out/Default 这样能够放置 debug 和 release,在 src 目录下还行一下命令:
gn gen out/Default
若是须要生成 release 工程文件,需在后面加上关闭 Default的参数 --args='is_debug= false'
生成 VS 解决方案工程文件
gn gen --ide=vs out/Default 会在 out/Default 目录下生成 all.sln 解决方案文件