织梦CMS - 轻松建站从此开始!

罗索实验室

当前位置: 主页 > 流媒体开发 > 流媒体开发 >

Windows下编译WebRTC过程 -----包含最新版本webrtc同步!

落鹤生 发布于 2015-02-24 14:47 点击:次 
这个方法同步旧版本的可以通过!~但是新版本的webrtc在生成工程的时候会出现错误!~新版本webrtc最新版本生成如下:最新版本webrtc源代码在windows上的编译方法
TAG: WebRTC  

1. 下载Google Depot Tools,这是Google 在 Chromium 中就开始使用的分发工具。

地址:https://sites.google.com/a/chromium.org/dev/developers/how-tos/depottools

直接下载 depot_tools.zip 并解压即可,将其目录(gclient所在路径)添加到“环境变量|系统变量|Path”中。

2. 安装GIT工具,下载并安装msysgit、Tortoisegit:

msysgit: http://code.google.com/p/msysgit/downloads/list

Tortoisegit: http://code.google.com/p/tortoisegit/downloads/list

选择适合自己系统的版本,下载并安装(注:Tortoisegit只是一个GUI,必须安装msysgit。)把msysgit中bin目录(默认为“C:/ProgramFiles/Git/bin”)手动添加到系统环境变量Path中。Tortoisegit安装时会找到Git目录并自动配置好。

3. 安装VisualStudio 2008,打上Service Pack1补丁包(也可以安装VisualStudio 2010,只是后面的编译过程会稍微麻烦一些)。

4. 安装Microsoft SDK 7.1。确保Lib目录和Include目录在VisualStudio中设置好:

MSVC|Tools|Options|Projects and Solutions|VC++Directories (e.g. C:\Program Files\Microsoft SDKs\Windows\v7.1\Lib).

5.安装Microsoft DirectX SDK (June 2010),在“MSVC|Tools|Options|Projects and Solutions|VC++Directories”保证Include目录“$(DXSDK_DIR)include” 和 Lib目录“$(DXSDK_DIR)lib\x86”已被添加。

注意:DirectX的“Include”目录要出现在搜索路径的第一个,否则可能会出现问题。

6. 安装Python2.X版本,将Python安装目录添加到系统环境变量Path中。

在“MSVC|Tools|Options|Projects and Solutions|VC++Directories|Executable files”中添加Python安装目录(e.g. C:\Python27).

7. 创建一个工作目录,例如“webrtc”,在命令提示符里进入该目录。

在命令提示符下运行如下命令,获取WebRTC的源码:

  1. $ gclient config http://webrtc.googlecode.com/svn/trunk 
  2. $ gclient sync --force 

或者:

  1. $ gclient.bat config http://webrtc.googlecode.com/svn/trunk 
  2. $ gclient.bat sync --force 

这 时会自动先安装subvison和其他必须的环境,其中“sync”命令还能创建开发环境(Linux:make, OSX:XCode, Windows: Visual Studio),如我们这里最关心的是 MSVisual Studio 的解决方案(trunk/webrtc.sln)。我们也可以手工通过下面的命令手工生成开发环境:

  1. $ gclient runhooks --force 

如果需要指定 MS Visual Studio 的版本,请在“gclient”前先如下调用:

  1. set GYP_MSVS_VERSION=2008 

源码目录下应该已经含有webrtc.sln,用 Visual Studio 打开即可,编译的时候可能会有些小问题,应该都是目录相关的,按照自己的环境重新设定一下即可。例如我这里按下面所指改动有问题的工程即可,“MSVC|Tools|Options|Projects and Solutions|VC++Directories”: 

可执行文件:

  1. C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin 
  2. C:\Python27 
  3. C:\Program Files\Microsoft DirectX SDK (June2010)\Utilities\bin\x86 

包含文件:

  1. C:\Program Files\Microsoft DirectX SDK (June 2010)\Include 
  2. C:\Program Files\Microsoft SDKs\Windows\v7.1\Include 

库文件:

  1. C:\Program Files\Microsoft SDKs\Windows\v7.1\Lib 
  2. C:\Program Files\Microsoft DirectX SDK (June 2010)\Lib\x86 

生成的可执行文件位于“\trunk\Debug”下,如“peerconnection_server.exe”和“peerconnection_client.exe”。

参考文档:

1. http://www.webrtc.org/reference/getting-started

2. http://blog.foolbear.com/2011/06/google-webrtc-for-windows-32bit.html

3. http://white313.blog.163.com/blog/static/2102620116314827580/

这个方法同步旧版本的可以通过!~但是新版本的webrtc在生成工程的时候会出现错误!~新版本webrtc最新版本生成如下:

当前日期:2014/2/26

最新版本webrtc源代码在windows上的编译方法

主要是生成vs工程这一步失效了,现在生成工程,需要set GYP_GENERATORS=msvs 以及call python trunk/webrtc/build/gyp_webrtc -G msvs_version=2010

需要准备的软件有,git,svn,python,gyp

1.下载安装git和svn,并加入到path环境变量

2.下载depot_tools
git clone https://chromium.googlesource.com/chromium/tools/depot_tools


3.下载python
git clone http://git.chromium.org/chromium/deps/python_26.git
或者svn checkout from
https://src.chromium.org/svn/trunk/tools/third_party/python_26/
python执行路径加入到path环境变量,因为编译的过程中需要这东西


4.下载gyp,gyp是python脚本
主页https://code.google.com/p/gyp/
svn checkout http://gyp.googlecode.com/svn/trunk/ gyp-read-only


5.安装gyp到python
在gyp目录下面,执行python setup.py install


6.配置
所需要的软件都下载完了,下面需要配置一下depot_tools,调整一下目录结构
复制git目录到depot_tools\git_bin
必须:复制python目录到depot_tools\python_bin
复制svn的bin目录到depot_tools\svn_bin


新建depot_tools\python.bat
内容为:(depot_tools\bootstrap\win\python.new.bat复制出来也行,注意看需要修改的哟)

  1. setlocal 
  2. set PATH=%~dp0python_bin;%PATH%  
  3. "%~dp0python_bin\python.exe" %*  

注意,svn和git可以不复制到depot_tools,但是python必须复制过来,如果svn和git没有复制过来,那请将这两个执行路径加入到path环境变量中
如果不想加入到path中,就复制到depot_tools并且建立depot_tools\svn.bat,depot_tools\git.bat写法同python.bat


7.下载webrtc源代码,并生成工程
网上讲使用命令行执行gclieng xxxx一类的命令来下载更新webrtc,在windows上你会死得很惨的,会不停地下载git,以及svn,不知道这次depot_tools更新 后,是否还会有这问题,我试着修改depot_tools,但是没有成功,太费时间了
于是,你新建一个bat文件,与depot_tools处在同一目录下面
bat中写入以下内容,并且执行,执行完以后,trunk为webrtc的源代码目录,
找个快点的vpn慢慢下载吧,
下载下来的,不只是源代码,还有一些测试资源.十分巨大,以G为单位 .

  1. set PATH=%~dp0depot_tools;%PATH% 
  2. call python depot_tools\gclient.py config https://webrtc.googlecode.com/svn/trunk 
  3. call python depot_tools\gclient.py sync --force 
  4. set GYP_GENERATORS=msvs 
  5. call python trunk/webrtc/build/gyp_webrtc -G msvs_version=2010 

最后一行生成vs工程

如果执行过程中不动,并且显示如下:
________ running 'download_from_google_storage --directory --recursive --num_thr
eads=10 --no_auth --bucket chromium-webrtc-resources trunk/resources' in 'G:\pro
ject\google\webrtc20140224'

这正在下载资源,看下你的宽带占用,就知道正在下载。

8.编译
不建议使用vs2008来编译,因为有些测试工程,不能编译通过,是因为stl版本不对的原因,建立使用vs2010及以上版本.
编译过程中需要的sdk7,direct sdk,自己下载去


我个人比较懒,喜欢使用命令行来编译,我的命令行如下
编译脚本 autocompile10.bat,调用方法call autocompile10 trunk\all.sln Debug

  1. @echo off 
  2. set _devenv="D:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\devenv.com" 
  3. set _solution_file="%~dp0%1" 
  4. echo ====================================== >>"%2_Results.log" 
  5. echo [%DATE% %Time%] Start compile sequence >>"%2_Results.log" 
  6. echo %_solution_file% >>"%2_Results.log" 
  7. %_devenv% %_solution_file% /build "%2|Win32" /Out "%2_Results.log" 
  8. if not %errorlevel% == 0 echo stop!!! %_solution_file% failed! Error: %errorlevel% >>"%2_Results.log" 
  9. if %errorlevel% == 0 echo %_solution_file% compiled successful >>"%2_Results.log" 
  10. if not %errorlevel% == 0 pause 
  11. echo [%DATE% %Time%] Finished compile sequence >>"%2_Results.log" 
  12. echo ====================================== >>"%2_Results.log" 
  13. echo +>>"%2_Results.log" 
  14. echo +>>"%2_Results.log" 
  15. echo +>>"%2_Results.log"  

编译中需要注意,
如果你下次打开电脑,再次编译的时候,出现错误,什么什么找不到,请执行webrtc源代码,\trunk\third_party\cygwin\setup_mount.bat

备注:
build for android http://www.webrtc.org/reference/getting-started
$ echo "target_os = ['android', 'unix']" >> .gclient
$ gclient sync --nohooks
$ cd trunk
$ source ./build/android/envsetup.sh
$ JAVA_HOME=<location of Java SE 6 - JDK>

(sxwyf248)
本站文章除注明转载外,均为本站原创或编译欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,同学习共成长。转载请注明:文章转载自:罗索实验室 [http://www1.rosoo.net/a/201502/17241.html]
本文出处:CSDN博客 作者:sxwyf248 原文
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
将本文分享到微信
织梦二维码生成器
推荐内容