webrtc编译教程
一、安装depot_tools工具
首先你的电脑上安装了git
1) 下载depot_tools
cd到下载的目录下
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
使用git下载源码的时候会报这样的错误
unable to access 'https://chromium.googlesource.com/chromium/tools/depot_tools.git/': Failed to connect to chromium.googlesource.com port 443: Operation timed out
可以按照下面这篇博客的方式进行配置就能下载了
https://laod.cn/hosts/2017-google-hosts.html/comment-page-6
2) 把depot_tools的路径添加到export PATH=`pwd`/depot_tools:"$PATH"
3) 检测路径是否添加正确
运行命令echo $PATH,查看工具的路径是否正确,如果不正确的话
下载webrtc的源码会报错fetch: command not found
检测depot_tools是否配置正确的方式还可以直接在终端输入gn然后按tab键
如果配置正确将显示
gn gn.py gnuattach gnuclient gnudoit gnumake gnuserv
如果配置不正确将显示
gnuattach gnuclient gnudoit gnumake gnuserv
二、下载webrtc的源码
首先你需要有VPN能翻墙,推荐使用红杏
fetch --nohooks webrtc_ios
gclient sync
运行以上的命令,前提是depot_tools配置正确
可能会出现以下的错误
Error: Command 'download_from_google_storage --no_resume --platform=darwin --no_auth --bucket chromium-luci -d src/tools/luci-go/mac64' returned non-zero exit status 1 in /Users/wuyong/Desktop/build_scripts/webrtc-build-scripts-master/ios/webrtc
这个错误很奇怪有的朋友就没有遇见这个错误
如果不管这个错误直接编译源码的话就会出现下面的错误
gn.py: Could not find gn executable at: /Users/wuyong/Desktop/new/src/buildtools/mac/gn
是说在这个目录下缺少一个gn的文件,我是在别人那里复制了一个这种gn的文件。
三、编译webrtc
运行以下命令后,有两种编译的方式
# debug build for 64-bit iOS
gn gen out/ios_64 --args
='target_os="ios" target_cpu="arm64"'
# debug build for simulator
gn gen out/ios_sim --args
='target_os="ios" target_cpu="x64"'
第一种利用ninja编译
首先你得安装ninja工具,cd到某个目录下下载ninja并安装
git clone git:
//github.com/martine/ninja.git
./bootstrap.py
ninja -C out/ios_64 AppRTCMobile
第二种利用xcode编译
gn gen out/ios --args
='target_os="ios" target_cpu="arm64"'--ide
=xcode
open -a Xcode.app out/ios/all.xcworkspace
最后在out的目录下生成了all.xcworkspace
以及
WebRTC.framework