windows下webrtc的编译 2016

原创 2015年07月07日 09:57:54

====================20160124更新=============================

推荐一个翻墙工具,shadowsocks,是需要付费的,一年也才不到100块,移动端也可以使用,而且不同于goagent这种只能在浏览器端使用的工具,它可以提供全局模式的代理,下载webrtc非常方便快速。

在使用gclient sync之前,需要以管理员身份打开一个命令行,设置以下内容

set GYP_DEFINES=target_arch=x64
set DEPOT_TOOLS_WIN_TOOLCHAIN=0
set GYP_GENERATORS=msvs-ninja,ninja
set GYP_MSVS_VERSION=2013
参考的是这篇文章

分享一个我在2016年1月初下载的源码,带vs2013 sln

https://yunpan.cn/cr2RGjuxE4ktX  访问密码 9dcd

=============================================================

webrtc工程的最大问题在于需要翻墙从谷歌服务器上下载大量的内容,速度很慢,容易出错,因此推荐直接从国内网盘下载已编译或未编译的版本,这里推荐两个实验证明可用的、较新的、已编译的版本,

下载链接:http://pan.baidu.com/s/1mgj1lri

http://yunpan.cn/lk/QaEQc5MJUZncQ (提取码:a480)  


以下的操作说明均基于上述工程,其他版本的流程基本相同。
1、webrtc工程只支持win7 64位或更新版本,不支持32位系统
2、安装python并将安装目录添加到环境变量中
3、安装windows SDK 8.1
4、安装Visual Studio 2013 Update 4 Community或Professtional版本,确保安装了MFC模块,不支持Visual Studio Express版本
5、安装DirectX SDK June 2010,安装完成后可能会报错,错误代码“s1023”,这是因为与系统已有的visual c++ redistributable packages版本冲突,不用管它,直接退出安装程序即可。这里我们需要的只是安装目录下的头文件和库。
6、安装WinDDK即驱动程序工具包,这里我们需要的主要是PATH\WinDDK\7600.16385.1\lib\ATL\amd64下的atlthunk.lib库
7、更改系统区域设置,在控制面板中找到区域和语言->管理->非Unicode程序的语言->英语
8、至此,所有的准备工作都已完成,可以打开工程目录下的all.sln进行编译了。


一般这时还会报如下错误:

1、警告被视为错误 - 没有生成“object”文件。

解决办法:改变项目的属性,把否警告被视为错误设为 “否(/WX-)”,有很多个工程需要设置

2、无法解析的外部符号 _intel_aes_encrypt_init_128,该符号在函数 _aes_InitContext 中被引用。

解决办法:把nss_static项目预处理器定义中的USE_HW_AES和INTEL_GCM去掉

3、error LNK2005: "class ATL::CAtlWinModule ATL::_AtlWinModule" (?_AtlWinModule@ATL@@3VCAtlWinModule@1@A) 已经在 libjingle_media.lib(win32devicemanager.obj) 中定义。

解决办法:在peerconnection_client项目的链接器->命令行中加入:/FORCE:MULTIPLE

4、error MSB3721: 命令“call python "..\..\tools\swarming_client\isolate.py" "check" "--result" "..\..\build\Debug\common_audio_unittests.isolated" "--isolate" "common_audio_unittests.isolate" "--path-variable" "DEPTH" "..\.." "--path-variable" "PRODUCT_DIR" "..\..\build\Debug\ " "--config-variable" "OS=win" "--config-variable" "chromeos=0" "--config-variable" "component=static_library" "--config-variable" "internal_gles2_conform_tests=0" "--config-variable" "icu_use_data_file_flag=1" "--config-variable" "use_openssl=0"”已退出,返回代码为 1。

解决办法:如前所述,在控制面板中找到区域和语音->管理->非Unicode程序的语言->英语

5、无法找到system_wrappers_default.lib文件,到src\build\Debug\lib 目录下。

解决办法:把编译出来的system_wrappers.lib复制一份并改名为 system_wrappers_default.lib



注意:工程中除了webrtc的核心代码外,还包含有大量的示例工程,所以若在直接全部编译时出现大量的重复错误,又不想一个一个地全部修正的话,可以找准需要的项目单独编译,单独修改。还有的时候,可能会在编译时发现很多工程都缺少同一个库,这样的话如果一个一个给这些工程添加这些库又很麻烦,可以右键工程-属性-配置属性-c/c++-附加包含目录或连接器-常规-附加库目录,webrtc中所有工程几乎都会有相同的附加包含目录,于是可以将缺失的库直接放入这样的附加包含目录中,再次编译时就会自动去这些目录下寻找相应文件了。

另外如果实在想用传统方法下载webrtc并进行编译的话,推荐参考这篇文章《WebRTC@第二章@编译Windows版@V1.0.0

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

webrtc成功编译(windows vs2015)

参考官网 因下载实在太难了,建议从WEBRTC群 网盘下载后再通过下面步骤生成并编译 推荐网盘 2016-5-31代码(WebRTCer分享) http://pan.baidu.com/s/1o8Eh...
  • doitsjz
  • doitsjz
  • 2016年06月04日 20:40
  • 6600

webrtc官方下载(windows)

为了生命,为了健康,过来看下xiaoc的博客,太繁杂了!xiaoc现在开始一步一步重新下载一遍。现在跟大家的时间是同步,2016年9月14开始下载,咱们看看到底啥时候下载完毕~~~~本文也可以从我网盘...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

WebRTC在Windows下的编译过程

最近有项目用到WebRTC的源码,由于WebRTC下载及编译有些麻烦,所以把过程记录一下,以便有需要的童鞋参考。 WebRTC下载完成后,在源码src目录下有一个all.sln的VS解决方案文件,打...

webRTC在Win7 VS2015下的编译和生成

一、辅助工具下载与安装 1. VS2015 需要是Visual studio 2015 update2版本,webrtc只支持这个版本; 2. SVN 下载TortoiseSVN工具 h...

webrtc windows工程下载包含sln以及编译介绍

webrtc工程的最大问题在于需要翻墙从谷歌服务器上下载大量的内容,速度很慢,容易出错,因此推荐直接从国内网盘下载已编译或未编译的版本,这里推荐两个实验证明可用的、较新的、已编译的版本, 下载链...
  • xyblog
  • xyblog
  • 2015年12月30日 10:52
  • 1255

Windows 下编译 WebRTC

-- Windows 下编译 WebRTC 一、系统环境准备 1、参考官方文档 https://webrtc.org/native-code/development/ //官方编译指导首页 ...

在windows10 上编译最新版webrtc源码

编译最新版webrtc源码步骤如下: 1、安装Win10 VM         2、在win10 上安装 vs2015 社区版, URL http://download.microsoft.c...

WebRTC学习之二:编译(Win10+VS2015)

一.准备 1.操作系统 Windows 7 64位及以上,必须是64位的。 2.VS版本 Visual Studio 2015 Update 3及以上。 http://download.micro...

windows WebRTC下载编译

1, 下载TortoiseSVN工具     http://sourceforge.net/projects/tortoisesvn/ 2,下载msysgit 选择一个版本安装   http://c...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:windows下webrtc的编译 2016
举报原因:
原因补充:

(最多只允许输入30个字)