Windows环境编译Qt可用的WebRTC库

时间:2023-01-07 01:04:03
  1. 编译WebRTC静态库

参考链接:https://blog.csdn.net/aggs1990/article/details/118230538

  1. 在cmd中设置临时环境变量

set PATH=%PATH%;D:\Soft\webrtc\depot_tools

set vs2019_install=D:\SetUp\Microsoft Visual Studio\2019\Community

set GYP_MSVS_OVERRIDE_PATH=D:\SetUp\Microsoft Visual Studio\2019\Community

set GYP_GENERATORS=msvs-ninja,ninja

set WINDOWSSDKDIR=C:\Program Files (x86)\Windows Kits\10

set DEPOT_TOOLS_WIN_TOOLCHAIN=0

  1. 切换目录

cd D:\Soft\webrtc\webrtc-checkout\src

  1. 编译webrtc

gn gen out/Default_qt --ide="qtcreator" --args="is_debug=true rtc_include_tests=false is_clang=false use_lld=false enable_iterator_debugging=true use_custom_libcxx=false use_custom_libcxx_for_host=false"

  1. 处理报错

4.1错误提示:gn.py: Could not find checkout in any parent of the current path.

解决方法: 经查看gn.py文件,找到报错位置,发现是获取gn.exe路径时报错,果断将其改为绝对路径 D:\Soft\webrtc\webrtc-checkout\src\buildtools\win,该报错消失。

Windows环境编译Qt可用的WebRTC库

4.2错误提示:ERROR at /l.gn:9:1: Unable to load "D:/Soft/webrtc/src/build/dotfile_settings.gni".import(" //build/dotfile_settings.gni")

解决方法:切换当前目录为D:\Soft\webrtc\webrtc-checkout\src

Windows环境编译Qt可用的WebRTC库

执行通过后如下图所示

Windows环境编译Qt可用的WebRTC库
  1. 生成debug版本webrtc.lib

执行命令:ninja -C out/Default_qt

Windows环境编译Qt可用的WebRTC库

生成后的debug版本lib库如下图路径

Windows环境编译Qt可用的WebRTC库
  1. 同样的方法生成release版本lib库

#release版本
gn gen out/Release_qt --ide="qtcreator" --args="is_debug=false rtc_include_tests=false is_clang=false use_lld=false enable_iterator_debugging=true use_custom_libcxx=false use_custom_libcxx_for_host=false"
 
ninja -C out/Release_qt
Windows环境编译Qt可用的WebRTC库
Windows环境编译Qt可用的WebRTC库

生成后的release版本lib库如下图路径

Windows环境编译Qt可用的WebRTC库

  1. ninja源码下载与编译

源码下载地址:https://github.com/ninja-build/ninja

编译参考链接:https://www.cnblogs.com/yapingxin/p/16887769.html

在源码目录编译: python configure.py --bootstrap

编译结束后设置环境变量,能显示出版本号则安装成功。

Windows环境编译Qt可用的WebRTC库