设置ubuntu的环境变量
# 可以写入 .bashrc 文件中
export ALL_PROXY=http://10.211.55.2:1087
export HTTP_PROXY=http://10.211.55.2:1087
export HTTPS_PROXY=http://10.211.55.2:1087
ln /usr/bin/python2 python
同步WebRTC
# 1.安装必要的软件
sudo apt install git python
# 2.切换到 home
cd /home/webrtc
# 3.安装和设置代码下载工具
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
export PATH=$PATH:/home/webrtc/depot_tools # 可以写在 .bashrc 里
# 4.创建工作目录并进入
mkdir webrtc_android
cd webrtc_android # 注意接下来执行命令始终在这个目录下
vi .gclient
//添加以下内容
solutions = [
{
"name": "src",
"url": "https://webrtc.googlesource.com/src.git",
"deps_file": "DEPS",
"managed": False,
"custom_deps": {},
},
]
target_os = ["android", "linux"] /*根据需要Android, ios*/
# 5.下载第一步:fetch
fetch --nohooks webrtc_android
# 6.设置 gclient 代理,原因是 gclient 无法使用 $HTTP_PROXY 设置代理,
# 而要使用 .boto 文件来设置。这就是上文提到的坑:)
export NO_AUTH_BOTO_CONFIG=/home/webrtc/.boto # 可以写在 .bashrc 里
echo -e "[Boto]\nproxy = 10.211.55.2\nproxy_port = 1087" > /home/webrtc/.boto
# 7.下载第二步:gclient,官网是一个步骤 "gclient sync",这里可以拆成两个
gclient sync --nohooks # 同步代码用时较短
gclient runhooks # 运行一些 hooks,会下载一些文件,其实这个步骤才需要 .boto 设置代理
将分支定位到m84
git checkout -b m84 refs/remotes/branch-heads/4147
再同步gclient sync
编译
# 编译
cd /home/webrtc/src
gn gen out/Release "--args=is_debug=true target_os=\"android\" target_cpu=\"arm64\""
ninja -C out/Release
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/*名字上做区别,需要自取。
编译 example app
cd /home/webrtc/src
gn gen out/Debug --args='target_os="android" target_cpu="arm64"'
ninja -C out/Debug AppRTCMobile
|