WebRTC@第二章@编译Windows版@V1.0.0



驾驭开源库WebRTC

第二章-编译Windows版本

作者:adam鸣谢:老张

日期:2015-4-6

版本:1.0.0

欢迎转载,有问题反馈Q2780113541,尽量完善系列教程。更新地址:https://github.com/wpc320/webrtc_doc.git

depot_tools代理设置参考老张《史上最牛逼的墙内下载webrtc代码说明_20150401

0、官方源码svn2015-3-24已迁至谷歌git

一些使用svn地址的教程已不适用或需改进

 

1、部署http(s)sock5代理,具体参考第一章

Shadowsocks:代理地址 127.0.0.1:1080

Privoxy:代理地址 127.0.0.1:8118

 

2、编译环境准备

Win主机或虚拟机一台,本人Win7x64,管理员账户登录。

安装好DXSDK june 2010VS2013Update4(本人只装了MFC,占用8G左右)

本教程以c盘作为工作区,装完后保证剩余空间20G以上。

 

3、下载工具准备

下载depot_tools并解压至c:\

https://src.chromium.org/svn/trunk/tools/depot_tools.zip

设置 depot_tools代理 [推荐]

为了解决 depot_tools自身更新问题,为depot_tools增加代理支持,修改c:\depot_tools\bootstarp\win\get_file.js文件:

1)改xml_http = newActiveXObject("MSXML2.ServerXMLHTTP");

    xml_http = newActiveXObject("MSXML2.ServerXMLHTTP.5.0");

2xml_http.open("GET", url,false); 前增加

   xml_http.setProxy(2,"127.0.0.1:1080");xml_http.setProxy(2, "127.0.0.1:8118");

 

 

4、设置下载工具路径至环境变量

计算机属性-》高级-》环境变量-》系统属性-》打开Path,最前边增加 C:\depot_tools;

管理员权限打开cmd,运行gclient自动更新工具,下载pythongitsvn等等。

如报错说明FQ失败或以上设置失败。

 

5、下载工具代理设置以及下载webrtc

c:\depot_tools下新建http_proxy.boto,内容如下:

[Boto]

proxy= 127.0.0.1

proxy_port= 8118

创建c:\webrtc,管理员权限打开cmd

cd c:\webrtc

设置下载工具代理环境变量:

sethttp_proxy=http://127.0.0.1:8118

sethttps_proxy=http://127.0.0.1:8118

设置下载工具git代理:

gitconfig --global http.proxy http://127.0.0.1:8118

或修改配置文件 %user_home%\.gitconfig [对特定仓库的话就是.git/config],增加:

[http]

proxy= http://127.0.0.1:8118

设置BOTO代理,解决download google storage失败问题:

setNO_AUTH_BOTO_CONFIG=C:\depot_tools\http_proxy.boto

 

设置不再次下载工具链:

setDEPOT_TOOLS_WIN_TOOLCHAIN=0

设置生成工程环境变量:

setGYP_GENERATORS=msvs-ninja,ninja

setGYP_MSVS_VERSION=2013

 

首次下载输入下载命令:

fetchwebrtc

等待几个G下载完成,最好没报错。

 

报错说明网络或上边代理设置存在问题,排除问题然后执行如下命令:

下载代码:

gitpullgitfetch

下载依赖项生成编译文件:

gclientsync

 

 

6、更改系统区域设置

控制面板-》管理-》更改系统区域设置-》改为英语(美国)-》重启电脑

否则VS编译会报错c2220等等

 

7、打开c:\webrtc\src下的all.sln,编译all

如果没出过错,一次就编译成了,如果出错请检查前边那些设置有问题并重复gclient sync

确保下载完整,重新编译。

编译好的库和demosrc\out下面。

 

8、最好使用VS2013Update4编译

因为官网注明“Chromium requestsVS2013 for now”,而webrtc依赖chromiumVS2013Xcode如今都是调用ninja的方式编译,但不影响调试。

ninja独立编译方法请自行搜索,或参考官网:

参考:http://www.webrtc.org/native-code/development

 

 

---------------------------进阶-----------------------------------

  1. 代码和依赖项更新

管理员权限打开cmd

cd c:\webrtc

setDEPOT_TOOLS_WIN_TOOLCHAIN=0

setGYP_GENERATORS=msvs-ninja,ninja

setGYP_MSVS_VERSION=2013

同步下载源码:

gitpullgitfetch

同步下载依赖项并根据GYP_GENERATORS的设置生成编译文件:

gclientsync

只同步下载依赖项不生成编译文件:

gclientsync --nohooks

只根据GYP_GENERATORS的设置生成编译文件:

gclientrunhooks

2VPS编译打包下载

如果使用的是WINVPS,整个WEBRTC是可以打包下来用的。

WIN下,现在的all.sln使用ninja编译,ninja所需工程文件位于out

先备份src下的out目录,然后编译测试通过后,生成的out目录会很大。

删掉out,用备份的out替换,打包(推荐7z),这样你就有份完整的原始包了

然后你可以配置个IIS,包放到C:\Inetpub\wwwroot,用支持续传的工具下载下来。

下不来就是网站有类型过滤,改个后缀为jpg,或者设置IISMIME类型。



你可能感兴趣的:(WebRTC@第二章@编译Windows版@V1.0.0)