1.首先你要到https://webrtc.org/native-code/ios 上各种蛋疼下载源码
目录入下图:
2.因为要执行depot_tools里面的ninja 和 gn 命令,所以要定义一个全局变量。
(即:在bash_profile中添加depot_tools的路径:export PATH=‘/Users/x x/Work/WebRTC/ios/depot_tools’:${PATH} )
a. 启动终端,当前路径为:/Users/xxxx
b. 把depot_tools 设置到PATH中
vi ~/.bash_profile
输入 export PATH=depot_tools路径 :$PATH
按“ESC”,输入 ":wq!" 保存退出;
source ~/.bash_profile 使PATH设置立即生效
echo $PATH 查看设置是否生效。
-
编译获得 32或者64 demo
(如果此时编译时报有: xcode-select: error: tool 'xcodebuild' requires Xcode ,这是因为多个Xcode重名后,xcodebuild找不到原来的Xcode了,解决方法:xcode-select -switch 新的xcode路径,如: sudo xcode-select -switch /Applications/Xcode\ 8.1.app ,就可以了。 )
最后编译Xcode工程
4.编译WebRTC.FrameWork
进入src->webrtc->build->iOS 执行build_ios_libs.sh. 中的 build_webrtc
5.编译完成后可能会遇到证书的问题
报错:如Tried to prepare a device build without specifying a code signing
identity and could not detect one automatically either.
TIP: Simulator builds don't require code signing... 或者AssertionError: Multiple codesigning fingerprints for identity: iPhone Developer 等等这个错误是由于mac os 上同时存在多个签名证书造成的。
解决:a. 打开终端输入: security find-identity 查看本机上具有多少个有效签名,有效签名为Valid identities only下面列出来的。
b.然后输入:find . -name common.gypi | xargs grep CODE_SIGN_IDENTITY 查看当前weRTCDemo中的实际签名,如果不一致,根据路径更改过来