webrtc demo编译笔记(待续)

一、简介

实际版本开发时,需要将webrtc的lib合入自己特定的工程库,这里记录一下合入过程,便于后续版本升级webrtc版本新建工程时参考。

二、环境配置

PC机:windows 10

VS版本:Microsoft Visual Studio Enterprise 2019

三、预置条件

  • VS配置安装Clang

webrtc默认编译器是Clang,所以使用VS进行编译时,需要在VS中增加Clang工具。

若不想在VS下使用Clang,可以在webrtc编译命令行中增加is_clang=false use_lld=false。

但是使用is_clang=false use_lld=false命令参数,webrtc不能使用H264功能,因为H264的解码调用的是ffmpeg的264解码器,编ffmpeg必须使用clang编译器。

webrtc demo编译笔记(待续)

  • 编译配置使用Clang平台工具集

webrtc demo编译笔记(待续)

四、makefile配置 

  • 修改webrtc编译配置lib库类型为MD

修改..\src\build\config\win路径下BUILD.gn配置文件如下:

webrtc demo编译笔记(待续)

  • 配置VS工程参数

根据webrtc编译输出文件..\src\out\Release\obj\examples路径下的peerconnection_client.ninja配置VS工程参数。

1、按照配置文件的-I参数,配置VS的include路径

webrtc demo编译笔记(待续)

webrtc demo编译笔记(待续)

注意,这里的gen是webrtc编译生成的文件。在..\src\out\Release\gen路径下。

2、按照配置文件的-D参数,配置VS的预处理器定义

webrtc demo编译笔记(待续)

 

webrtc demo编译笔记(待续)

3、按照配置文件的link,配置链接器的lib库的依赖关系。

webrtc demo编译笔记(待续)

webrtc demo编译笔记(待续)

备注:1、peerconnection_client.ninja没有包含webrtc.lib,我们自己写工程,需要包含进去。

           2、配置webrtc编译命令行参数is_component_build=false,仅仅引用lib静态库。