前言

1.目前webrtc支持vs2017 vs2019 vs2022版本
(由于下载的是vs2022放在了D盘,但是webrtc中有些编译文件将vs的路径写死,所以重新下载了vs2019版本放在了C盘默认路径,避免一些奇奇怪怪的错误)
2.下载全过程需要科学上网(这一点很重要,大部分错误都是由于网络状况导致某个文件没有下载)
3.安装Python2.7 Git等基础工具并配置(将Python27作为默认,Python3版本可能会出错)
4.系统要求:
(1)具有至少 8GB RAM 的 64 位 Intel 机器,建议超过 16GB
(2)NTFS 格式的硬盘驱动器上至少有 100GB 的可用磁盘空间(至少50GB)
(3)win10及以上版本

1.设置代理

  1. 打开cmd命令行
set http_proxy=127.0.0.1:15732 //端口号可以查看上网软件的代理端口号
set https_proxy=127.0.0.1:15732 //cmd命令行窗口关闭后需要重新设置 或者写死在系统变量

2.下载depot_tools工具

  1. 下载depot_tools工具并解压。(例如F:\depot_tools)

  2. 打开“查看高级系统设置”点击“环境变量”,点击“编辑”修改系统变量PATH, 加入depot_tools的路径,并且上移到最顶(至少在git和python前,否则导致gn过度构建)

  3. 打开cmd.exe运行

gclient
//在第一次运行时,gclient 将安装使用代码所需的所有 Windows 定位,包括 msysgit 和 python
//如果从非 cmd shell(例如,cygwin、PowerShell)运行 gclient,可能看起来运行正常,但 msysgit、python 和其他工具可能无法正确安装
  1. 新建系统变量
set DEPOT_TOOLS_WIN_TOOLCHAIN = 0 //depot_tools使用本机vs编译

3.下载VS2019和Windows SDK

  1. 下载vs2019或者vs2022版本(最好按照默认路径安装在C盘)
    如果删除旧版本,重新安装,路径无法变成默认路径则:
    win+R 输入 regedit 打开注册表
    路径:计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\Setup
    删除默认路径

  2. 勾选”使用C++的桌面开发“ ”使用C++的移动开发“ ”通用Windows平台开发“

  3. 在安装详细信息或者单个组件中,点击”使用C++的桌面开发“ (如果担心,这个目录下的组件可以全部下载)
    (1)勾选MFC和ATL
    (2)勾选Windows 11 SDK(10.0.22000.0) (适用Win11系统)
    (3)勾选Windows 10 SDK (10.0.20348.0) (编译过程中显示需要这个版本)
    (4)勾选Windows 10 SDK(10.0.19041.0)(目前win10教程中都是下载这个SDK)

  4. 打开 ”控制面板\程序\程序和功能“,点击各个版本Windows Software Development Kit 选择更改(change)-> change->next 勾选Debugging Tools for Windows 点击 Change

  5. 配置系统变量

set GYP_GENERATORS = msvs-ninja,ninja
set GYP_MSVS_OVERRIDE_PATH = C:\Program Files (x86)\Microsoft Visual Studio\2019\Community
set GYP_MSVS_VERSION = 2019
set vs2019_install = C:\Program Files (x86)\Microsoft Visual Studio\2019\Community
set WINDOWSSDKDIR = D:\Windows Kits\10

4.获取WebRTC源码

  1. 拉取源码
fetch --nohooks webrtc
gclient sync //如果网络导致fetch中断,可以执行这一步继续获取源码
//网络状况良好fetch完成 也要执行gclient sync
//后续编译出错不成功,可以再次尝试gclient sync
  1. 构建
cd src
//生成debug版
gn gen --ide=vs out/Default //Default名称可以换 但必须是out目录
// 生成release版
gn gen --ide=vs out/Default --args="is_debug=false"
//--args可以指定多个参数 使用 gn help --args 可以显示详细信息
  1. 编译
ninja -C out/Default
//-C 告诉ninja到out/Default目录下编译

结尾

1.下载源码过程中参考了很多教程和chromium源码下载教程
2.过程中大部分出现error都是因为网络问题,如果不是想要提取webrtc中的某些模块进行开发,尽量不要改动里面的代码解决错误

Windows11/Win10+VS2019下载编译WebRTC源码相关推荐

  1. win10最新下载编译Android源码的简易方法分享(已亲测)

    win10最新下载编译Android源码的简易方法分享(已亲测) 准备至少150G的硬盘空间 win+R 输入control 打开程序与功能-启用或关闭Windows功能 勾选"适用于Lin ...

  2. Ubuntu 16.04下载编译Android11源码

    Ubuntu 16.04下载编译Android11源码 Ubuntu 16.04下载编译Android11源码 1. 硬件要求 2. 设置Linux构建环境 1. 安装所需的软件包 2. 安装Open ...

  3. windows下载编译chromium源码

    前言 chromium 源码的下载编译,真的就是如各位前辈说的一样,参考再完整的教程,还是会遇到各种各样的问题.因为每个人的开发环境是不一样的,网络环境也不一样. 一路参考各路大神的教程开始踩坑填坑的 ...

  4. MAC下载编译Android源码及BUG

    前言 配置如下: MAC 10.13 xcode: Version 9.2 jdk: 1.8.0_131 android源码版本: android-8.1.0_r1 最后下载完,.repo 约30G, ...

  5. ubuntu系统下载编译android源码

    在ubuntu系统下编译android需要注意的事项: 1. 参考http://source.android.com/中的安装说明. 2. 安装JDK6中碰到的问题可以参考http://hi.baid ...

  6. gradle编译spring源码

    文章目录 一.gradle的下载 二.Gradle配置 三.gradle和maven区别 四.下载编译spring源码 1.下载spring源码 2.修改settings.gradle 3.修改gra ...

  7. WebRTC源码下载与编译

    WebRTC源码编译 1 几种源码下载方案对比 1.1 拉别人下好的代码 1.2云服务器 1.3 国内镜像 1.4 挂代理(推荐) 2 源码编译环境准备 2.1 环境要求 2.2 代理服务器配置 2. ...

  8. Win10+VS2019编译Jpeg源码时缺少win32.mak文件的内容

    在Win10中,使用VS2019的nmake编译Jpeg源码时,缺少win32.mak文件. win32.mak文件的内容如下: # Win32.Mak - Win32 application mas ...

  9. vs2019编译obs源码生成sln解决方案

    目录 一.OBS介绍 二.OBS源码下载 三.Qt配置 四.设置依赖库目录 五.开始编译 六.main函数 七.视频教程 一.OBS介绍   obs的编译不是很难,只要代码下的全,环境变量配的ok, ...

最新文章

  1. 把 Bug 晾几天就能解决了!!! | 每日趣闻
  2. c程序语言设定定义域,4.22C语言学习日记:变量的定义域及编译预处理
  3. 第一类Stirling数和第二类Stirling
  4. Mozilla考虑支持H.264
  5. n1运行linux,斐讯N1折腾记:运行 Linux 及优化
  6. SphereEx 完成近千万美元 Pre-A 轮融资,连接企业数据与应用,构建新一代数据库生态引擎
  7. C语言递归算法(一)
  8. c语言用菜单做计算器,小白求大神帮忙用C语言做个多功能计算器!!!!
  9. JDBC05 ResultSet结果集
  10. 谁与争锋|神龙三代,集大成而来!
  11. HomeBrew 镜像加速
  12. html格式蠕虫病毒,蠕虫病毒Win32.Womble.B
  13. 关于互联网金融的安全、监管
  14. 【Appium】手机滑动swipe方法及如何进行坐标定位
  15. [CF538H]Summer Dichotomy
  16. JavaSE常见面试题
  17. 2019美团机器学习/数据挖掘算法实习生笔试 编程题修改矩阵
  18. 3D格式转换工具HOOPS助力甲骨文公司成功升级3D浏览器AutoVue
  19. 基于离散余弦变换(DCT)傅里叶变换(DFT)小波变换(DWT)的彩色图像数字水印的嵌入、提取简介及MATLAB实现
  20. 高中计算机flash的知识点,高中信息技术flash教学.ppt

热门文章

  1. Windows server 2008 基础知识
  2. qq电脑管家文件粉碎工具
  3. ROS中yaml文件编写格式
  4. 同济计算机考研专业课,同济大学计算机考研难不难
  5. mysql数据报错:Packet for query is too large (1348754 1048576)
  6. 汇佳学校绿龙冰球队 绽放冰雪强校激情
  7. css变成块级元素_设置标签的css样式代码为“display:block”,标签将变为块级元素。( )...
  8. js实现鼠标悬浮元素出现/隐藏效果
  9. 打通linux的tty驱动的数据链路,打通linux的tty驱动的数据链路
  10. 计算机辅助技术论文,计算机辅助设计技术论文(2)