webrtc c++ (零) webrtc vs2017最新源码编译

1 设置代理
对于google的一系列开源仓库都在国外的服务器上面,所以需要设置代理;
我选择的是ShadowSockes+Privoxy,配置方法如下:

1.1 shadowSockes的配置,略
1.2 Privoxy的配置
    有了上面的ShadowSockes,只是可以浏览器访问google了,但是如果要在cmd里面获取webrtc的代码还不行,还需要设置代理;
下载安装包:https://sourceforge.net/projects/ijbswa/files/latest/download
不了解可以参考一下这个教程什么是Privoxy:https://www.cnblogs.com/hongdada/p/10787924.html
Privoxy socks代理转http&https:

配置文件(安装后里面有个config.txt)中添加如下内容:
forward-socks5      /                  127.0.0.1:1080 .
之后重新启动Privoxy软件。

2 控制台设置代理并下载代码
我们win+r,输入cmd,打开一个控制台:
控制台输入:
#
set http_proxy=http://127.0.0.1:1080
set https_proxy=http://127.0.0.1:1080

#git 代理
git config --global http.proxy 127.0.0.1:1080
git config --global https.proxy 127.0.0.1:1080

3下载depot_tools
depto_tools 是google的开源工具包,里面有gclient gn ninja等工具,这些可以直接下载与编译google的代码
下载 depto_tools源码
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git

接着将depot_tools目录的路径加到系统环境变量Path里,然后把该路径移到最前面。
然后新建一个用户环境变量: DEPOT_TOOLS_WIN_TOOLCHAIN ,值设置为0,这是为了告诉depot_tools使用我们本机的VS进行编译。

4更新depot_tools,更新配置工具
gclient

5下载webrtc代码
首先设置一些环节变量
set GYP_MSVS_VERSION=2017 #vs版本
set GYP_MSVS_OVERRIDE_PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise #vs路径
set GYP_GENERATORS=msvs-ninja,ninja
mkdir webrtc-checkout
cd webrtc-checkout
fetch --nohooks webrtc #获取webrtc代码(代码很大,十几g)
gclient sync     #如果因为网络等原因中断了,就执行gclient sync。如果这上一步一直卡着不动,可以执行ctrl+c,然后执行gclient sync。即中断后继续下载


6编译
进入下载的src目录
cd src
生成 vs需要的sln文件
gn gen out/Debug  --ide=vs2017 --args="proprietary_codecs=true is_debug=true target_cpu=\"x86\" is_clang=false ffmpeg_branding=\"Chrome\"  rtc_use_h264=true rtc_include_tests=false"
////////////////////
参数说明:
--ide:是用的什么编译器
is_debug:是不是debug版本
target_cpu:是32位还是64位
is_clang:如果用vs编译的化,is_clang要置为false,否则编译不过去
rtc_use_h264:用h264编解码
rtc_include_tests:关闭测试代码,如果开着,可能会报一些错误

生成后,可以在src/out/Debug 下得到 all.sln解决方案文件。

使用nija编译
ninja -C out/Debug > build.log

用vs2017打开all.sln编译。。。

 

 

你可能感兴趣的:(webrtc,c++,音视频)