WebRTC Android版本編譯


  本文簡單介紹如何在Ubuntu18.04 上,編譯WebRTC Android版本。

安裝工具

  需要用到depot_tools工具來下載webrtc源碼。

安裝 depot_tools

  git 命令獲取 depot_tools。

# git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git

  配置壞境變量:

# echo "export PATH=$PWD/depot_tools:$PATH" > $HOME/.bash_profile
# source $HOME/.bash_profile

  檢測配置是否成功:

$ echo $PATH

下載源碼

默認master分支

  默認是下載當前最新的源碼,即Master分支。

# mkdir webrtc
# cd webrtc
# fetch --nohooks webrtc_android
# gclient sync

特定分支

  如果要編譯特定分支,如M74分支,需指定特定分支進行同步。拉取M74分支使用如下命令:(分支提交記錄可參考WebRTC分支提交記錄

gclient sync -r cc1b32545db7823b85f5a83a92ed5f85970492c9  --force
# commit id 可通過切換到該分支,查看git log,最上面那條記錄即為當前分支最新的提交記錄

編譯

安裝編譯依賴

  官網只給出第一條,建議兩條命令都執行。

# ./src/build/install-build-deps.sh
# ./src/build/install-build-deps-android.sh

編譯

 編譯可指定帶或不帶AppRTCMobile,帶AppRTCMobile生成的Debug目錄較小,不帶AppRTCMobile生成的文件較多,也更大。

# source build/android/envsetup.sh
# gn gen out/Debug --args='target_os="android" target_cpu="arm64"'
# ninja -C out/Debug AppRTCMobile

  編譯過程中,如果沒有出錯,即表示編譯成功。

編譯組合

a)編譯arm debug版本

    gn gen out/Debug_arm --args='target_os="android" target_cpu="arm"'
    ninja -C out/Debug_arm

b)編譯arm64 debug版本

    gn gen out/Debug_arm64 --args='target_os="android" target_cpu="arm64"'
    ninja -C out/Debug_arm64

c)編譯arm release版本

    gn gen out/Release_arm --args='target_os="android" target_cpu="arm" is_debug=false'
    ninja -C out/Release_arm

d)編譯arm64 release版本

    gn gen out/Release_arm64 --args='target_os="android" target_cpu="arm64" is_debug=false'
    ninja -C out/Release_arm64

此處在生成的out/*名字上做區別,需要自取。

參考

  編譯Android版的WebRTC
    https://blog.csdn.net/ericbar/article/details/83114015
  WebRTC iOS&OSX 庫的編譯
    http://www.enkichen.com/2017/05/12/webrtc-ios-build/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM