1. 下載 Chromium depot tools
$ svn co http://src.chromium.org/svn/trunk/tools/depot_tools
2. 設定環境變數
$ vi . profile
加入 "PATH=$PATH:/Users/mac/depot_tools"
$ source .profile
3. 設定下載的程式為 webrtc
$ cd User/username/depot_tools
$ gclient config http://webrtc.googlecode.com/svn/trunk
4. 下載 webrtc
$ gclient sync --force
(此步驟需要很久的下載時間,建議是睡覺前放著下載,睡醒了差不多就成功了)
$ gclient runhooks --force
5. 編譯程式(預設使用 ninja 編譯)
$ cd trunk
Debug:
$ ninja -C out/Debug
Release:
$ ninja -C out/Release
6. 改成使用 xcode 編譯程式
a. 設定環境變數
$ export GYP_DEFINES="build_with_libjingle=1 build_with_chromium=0 libjingle_objc=1"b. 產生 xcode project file (all.xcodeproj)
$ export GYP_GENERATORS="xcode"
$ gclient runhooks --force
c. 使用 xcode 打開 trunk/all.xcodepro。
d. 以執行 p2p unittest 為例子,其 Project and Target 選擇方式如下:
7. 如果要單獨執行某個 unittest, 作法如下,(以 pseudotcp_unittest.cc 為例)select project "libjingle_test"
select target "libjingle_p2p_unittest"
press ctrl+F5 to run
select TARGETS "libjingle_p2p_unittest"
select "Build" -> "libjingle_test.gyp"
search "libjingle_p2p_unittest"
modify "sources", remove all file expect pseudotcp_unittest.cc
參考資料:
- www.webrtc.org
- Mac下载并编译webrtc,安装模拟器和真机Demo
- how-to-get-started-with-webrtc-and-ios-without-wasting-10-hours-of-your-life