Windows11/Win10+VS2019下载编译WebRTC源码

前言

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中的某些模块进行开发,尽量不要改动里面的代码解决错误

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Windows 10上编译WebRTC可以按照以下步骤进行: 1. 首先,确保你的系统已经安装了Visual Studio。WebRTCWindows上的编译需要使用Visual Studio环境。 2. 下载depot_tools,它是一个用于下载WebRTC源代码的工具。可以在GitHub上找到depot_tools的源码,并按照文档中的步骤进行安装。 3. 打开命令提示符或PowerShell,并导航到你想要保存WebRTC源代码的文件夹。 4. 使用以下命令克隆WebRTC的代码仓库: ``` git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git ``` 5. 添加depot_tools到系统的环境变量中。在命令提示符或PowerShell中,输入以下命令: ``` set PATH=%PATH%;[depot_tools目录的路径] ``` 这将使你能够在任何目录中使用depot_tools中的命令。 6. 使用以下命令下载WebRTC的源代码: ``` fetch --nohooks webrtc ``` 此命令将下载WebRTC的源代码到当前文件夹下的src目录中。 7. 进入src目录,并使用命令执行Hook脚本以获取编译所需的依赖项: ``` cd src gclient runhooks ``` 8. 接下来,根据你的编译需求选择合适的方案,并使用gn生成构建配置文件。 如果你想做一个默认构建,可以使用以下命令: ``` gn gen out/Default ``` 如果你想构建一个调试版本,可以使用以下命令: ``` gn gen out/Debug --args="is_debug=true" ``` 构建配置文件将生成在out/Default或out/Debug目录中。 9. 最后,使用ninja命令来编译WebRTC: ``` ninja -C out/Default ``` 或者,如果你选择了调试版本: ``` ninja -C out/Debug ``` 这将编译WebRTC并生成可执行文件和库文件。 以上是在Windows 10上编译WebRTC的简要步骤。请注意,这只是一个概述,实际操作可能会根据具体环境有所不同。在实际操作中,请根据WebRTC项目的文档和最新的指南进行操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值