- 本人今天完成 webRTC 在 mac 平臺下 編譯, 寫下總結(jié)為避免以后走彎路.
編譯環(huán)境: mac 10.11.14, xcode 7.3.1 webRTC 最新源碼 2016.09.04
由于工程比較龐大, 以后上傳到網(wǎng)盤再給各位分享.
1. 獲取webRTC源碼
友情提醒: 自備一個速度快一點的 vpn, 至少16g的硬盤空間
官方文檔
- 獲取 depot_tools
下載完畢之后給電腦配置環(huán)境變量
$vim ~/.base_profile
$export PATH=depot_tools目錄:PATH
2. 獲取 webRTC 源碼
參考官方步驟
$mkdir webRTC
$cd webRTC
$fetch --nohooks webrtc_ios
$gclient sync
// 注意這里需要相當(dāng)長的時間, 請耐心等待
2.1 更新 webRTC 源碼
// 更新源碼 cd src
$git fetch
$git pull
// 更新編譯工具
$cd ..
$gclinet sync
3. 編譯webRTC
注意 python 版本號必須大于 2.7, 這里記錄我編譯過程中遇到的困難
- 編譯, 請參考 官方編譯腳本
- 編譯前,請檢查 gclient 的配置
// 這是我的配置
solutions = [
{
"managed": False,
"name": "src",
"url": "https://chromium.googlesource.com/external/webrtc.git",
"custom_deps": {},
"deps_file": "DEPS",
"safesync_url": "",
},
]
// 這個地方一定要寫對
target_os = ["ios", "mac"]
1號坑: gyp: third_party/class-dump/class-dump.gyp not found
原因是編譯前需要生成一些工具所需要的二進制文件
解決:
$cd src
$./setup_links.py
2號坑: Multiple codesigning fingerprints for identity
原因沒指定 xcode 證書簽名
解決:
//1. 找出你所需要的證書簽名
$security find-identity
// 2. 修改編譯配置, 找到'CODE_SIGN_IDENTITY[sdk=iphoneos*] 寫上對應(yīng)的簽名
$vim ./chromium/src/build/common.gypi