webrtc所有平台下载编译步骤详细说明

简介: webrtc所有平台下载编译步骤详细说明   1、安装depot tools Windows:国外下载:https://storage.googleapis.com/chrome-infra/depot_tools.

webrtc所有平台下载编译步骤详细说明

 

1、安装depot tools


Windows:
国外下载:https://storage.googleapis.com/chrome-infra/depot_tools.zip
下载完把压缩包解压,然后把解压目录加入PATH环境变量
LinuxAndroid)/Mac(iOS):
安装Git
国外:git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
国内:git clone https://source.codeaurora.org/quic/lc/chromium/tools/depot_tools
把depot_tools目录加入PATH:export PATH=`pwd`/depot_tools:"$PATH"

 

2.安装依赖软件


Windows:
a、系统locale最好设置成English,就是控制面板里面的Region,看下图


b、安装”Visual Studio 2015 Update 2“,其他版本都不受官方支持。
c、操作系统必须是Windows 7 x64及以上版本,x86操作系统都不支持。
d、安装VS2015时必须有下列组件:
•Visual C++, which will select three sub-categories including MFC
•Universal Windows Apps Development Tools > Tools
•Universal Windows Apps Development Tools > Windows 10 SDK (10.0.10586)
e、新开个cmd中运行set DEPOT_TOOLS_WIN_TOOLCHAIN=0,之后所以脚本都在这个cmd中运行
f、编译是用ninja而不是VS!

Linux:看后面

Android:
安装Java OpenJDK:
$ sudo apt-get install openjdk-7-jdk
$ sudo update-alternatives --config javac
$ sudo update-alternatives --config Java
$ sudo update-alternatives --config javaws
$ sudo update-alternatives --config javap
$ sudo update-alternatives --config jar
$ sudo update-alternatives --config jarsigner

Mac(IOS):
安装最新XCode

 

3.下源码


先创建目录
mkdir webrtc-checkout
cd webrtc-checkout

Windows:
fetch --nohooks webrtc
gclient sync

Linux:
export GYP_DEFINES="OS=linux"
fetch --nohooks webrtc_android
gclient sync

cd src
./build/install-build-deps.sh

Android:
export GYP_DEFINES="OS=android"
fetch --nohooks webrtc_android
gclient sync

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

Mac:
export GYP_DEFINES="OS=mac"
fetch --nohooks webrtc_ios
gclient sync

IOS:
export GYP_DEFINES="OS=ios"
fetch --nohooks webrtc_ios
gclient sync

 

4、生成ninja项目文件


Windows/Linux:
方式一:使用gn生成:
生成debug版ninja项目文件:gn gen out/Default
生成release版ninja项目文件:gn gen out/Default --args='is_debug=false'
清空ninja项目文件:gn clean out/Default
方式二:使用gyp生成(已过期的方式,但是目前还可以用)
Python webrtc/build/gyp_webrtc.py

Android:
使用gn生成:
gn gen out/Default --args='target_os="android" target_cpu="arm"'
生成ARM64版:gn gen out/Default --args='target_os="android" target_cpu="arm64"'
生成32位 x86版:gn gen out/Default --args='target_os="android" target_cpu="x86"'
生成64位 x64版:gn gen out/Default --args='target_os="android" target_cpu="x64"'

Mac:
使用gn生成:
gn gen out/Debug-mac --args='target_os="mac" target_cpu="x64" is_component_build=false'

IOS:
生成ARM版:gn gen out/Debug-device-arm32 --args='target_os="ios" target_cpu="arm" is_component_build=false'
生成ARM64版:gn gen out/Debug-device-arm64 --args='target_os="ios" target_cpu="arm64" is_component_build=false'
生成32位模拟器版:gn gen out/Debug-sim32 --args='target_os="ios" target_cpu="x86" is_component_build=false'
生成64位模拟器版:gn gen out/Debug-sim64 --args='target_os="ios" target_cpu="x64" is_component_build=false'

 

5.编译源码


Windows/Linux/Android/Mac/IOS:
ninja -C out/Default

好了,这样就编译出来所有相关的库和测试程序。

目录
相关文章
|
Web App开发 应用服务中间件 Go
尝鲜:如何搭建一个简单的webrtc服务器
前几天我一朋友问我有关webrtc的事,简单了解了下相关知识,搭建了一个webrtc的服务,以及经历的各种踩坑事件,感觉踩坑主要是Python、Node、OpenSSL等版本问题和证书问题导致。本来以为很简单的搭建,但在搭建的过程中遇到各种阻碍,写一篇文章梳理一下。
13532 0
|
Web App开发 编解码 安全
【WebRTC 入门教程】全面解析WebRTC:从底层原理到Qt和FFmpeg的集成应用
【WebRTC 入门教程】全面解析WebRTC:从底层原理到Qt和FFmpeg的集成应用
7101 2
|
网络性能优化 网络架构 网络协议
|
10月前
|
人工智能 JavaScript Java
从零开始教你打造一个MCP客户端
Anthropic开源了一套MCP协议,它为连接AI系统与数据源提供了一个通用的、开放的标准,用单一协议取代了碎片化的集成方式。本文教你从零打造一个MCP客户端。
6826 5
|
存储 程序员 编译器
简述 C、C++程序编译的内存分配情况
在C和C++程序编译过程中,内存被划分为几个区域进行分配:代码区存储常量和执行指令;全局/静态变量区存放全局变量及静态变量;栈区管理函数参数、局部变量等;堆区则用于动态分配内存,由程序员控制释放,共同支撑着程序运行时的数据存储与处理需求。
659 22
|
网络协议 Ubuntu Linux
VSCode使用Remote SSH远程连接Linux服务器【远程开发】
VSCode使用Remote SSH远程连接Linux服务器【远程开发】
|
Web App开发 开发工具 git
WebRTC 源码旧版本下载
WebRTC 源码旧版本下载
1024 0
|
编解码 Linux Android开发
linux文件组 avc: denied { dac_read_search } for capability=2
linux文件组 avc: denied { dac_read_search } for capability=2
757 0
|
编解码
RTP 包格式 详细解析
H.264 视频 RTP 负载格式 1. 网络抽象层单元类型 (NALU) NALU 头由一个字节组成, 它的语法如下:       +---------------+      |0|1|2|3|4|5|6|7|      +-+-+-+-+-+-+-+-+      |F|NRI|  Type   |      +---------------+ F: 1 个比特.
1437 0