Windows平台编译WebRTC

编译WebRTC网上已经很多文章,基本每篇文章并不能完全按照作者就一次能成功,年青人总归是要走些弯路的,所以出错是难免的,出错时怀疑过网络、环境、各博主著作时的版本和现在最新WebRTC的差异,一点点解决了,因此也记录一下,总体上大同小异,大胆和耐心去尝试总会遇到对的。

0、网络准备

可以访问外网,这一步如果没有解决,接下来的文章可以忽略了。稳定、快速的外网环境真的能让人少走很多弯路和节省时间,笔者曾用公司的外网和电脑(有安全保护)搞了将近半个月都没搞好,用自己的后从搭环境、下载源码到demo运行起来才花三个多小时。如果不能访问外网,只能转战国内镜像,比如声网的镜像

1、Window环境准备

(尽量是干净的电脑,笔者怀疑过已有的开发环境对前期工具、编译有影响,这一步不需要外网)

100G +的磁盘空间,NTFS格式,因为编译时的临时文件大和一些文件超过4G;

Window SDK安装,安装到C盘,用较新的WebRTC就先安装最新版本的sdk,这里下载,注意安装时一定要勾上Debugging Tools For Windows选项;后面编译时如果提示sdk版本出错可以再选择装对应的版本或者修改对应的文件为自己的版本。

VS2019安装,安装到C盘,各作者都不太建议使用最新的,笔者也不想太新的,因为太新的如果出问题都找不到解决方法;这里下载2019版本,社区版/专业版、英文/中文版都可以;下载后打开CMD用以下命令来进行安装,第一项是vs2019安装包的名称,后面是参数。

vs2019_community.exe --add Microsoft.VisualStudio.Workload.NativeDesktop --add Microsoft.VisualStudio.Component.VC.ATLMFC --includeRecommended

2、安装depot_tools

depot_tools是获取源码、编译必须的工具,建议使用git下载;这一步开始需要外网。

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

下载depot_tools之后,将其添加进环境变量中,注意是添加到系统变量中的Path,并且将其上移到第一位;

同样的添加环境变量方法,添加“DEPOT_TOOLS_WIN_TOOLCHAIN” ,并设值置为0,意思是告诉depot_tool工具将使用的是本地visualstudio;

3、更新工具

打开CMD,执行“gclient”,会自动更新webrtc所需要的工具,比如ninja、python等,更新完之后可以执行ninja --help或者python用来测试,如果对应命令有响应则成功了;如果没有响应先排除一些网络环境和再次执行“gclient”就行。

4、获取Webrtc源码

1. mkdir webrtc_code        /*创建一个存放源码的文件夹*/
2. cd webrtc_code     
3. fetch --nohooks webrtc   /*开始获取源码,十多个G*/
4. gclient sync             /*补充和更新对应的编译工具等*/

下载完成后,建议选择一个较新和稳定的版本,这里可以查看WebRTC的一些版本分支信息,笔者这里选择4515的分支,也就是m92的版本,因为用较新的版本,VS运行peerconnection Demo会出错,注意每次切换分支之后需要再次执行“gclient sync”或者根据提示“gclient sync -D”

git checkout -b 4515 remotes/branch-heads/4515
gclient sync

5、编译源码

先设置下VS的环境信息

set GYP_MSVS_VERSION=2019
set GYP_MSVS_OVERRIDE_PATH=C:\Program Files (x86)\Microsoft Visual Studio\2019\Community

生成vs工程、设置是release版本和编译,debug版本运行demo时需要注释一个断言,所以直接选择生成release版本,这一步成功后是可以直接用vs打开运行了,不用再做其他的步骤。

gn gen --ide=vs2019 out/release --args="is_debug=false"
ninja -C out/release

如果此步骤出错,根据对应提示解决就行了,如果百度不能解决的,基本就是glcient sync这一步骤异常,没有完整的更新和安装成功。

参考文章:

Windows下编译WebRTC

Windows平台WebRTC编译

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 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、付费专栏及课程。

余额充值