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的源码:
- $ gclient config http:
- $ gclient sync --force
或者:
- $ gclient.bat config http:
- $ gclient.bat sync --force
这 时会自动先安装subvison和其他必须的环境,其中“sync”命令还能创建开发环境(Linux:make, OSX:XCode, Windows: Visual Studio),如我们这里最关心的是 MSVisual Studio 的解决方案(trunk/webrtc.sln)。我们也可以手工通过下面的命令手工生成开发环境:
- $ gclient runhooks --force
如果需要指定 MS Visual Studio 的版本,请在“gclient”前先如下调用:
- set GYP_MSVS_VERSION=2008
源码目录下应该已经含有webrtc.sln,用 Visual Studio 打开即可,编译的时候可能会有些小问题,应该都是目录相关的,按照自己的环境重新设定一下即可。例如我这里按下面所指改动有问题的工程即可,“MSVC|Tools|Options|Projects and Solutions|VC++Directories”:
可执行文件:
- C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin
- C:\Python27
- C:\Program Files\Microsoft DirectX SDK (June2010)\Utilities\bin\x86
包含文件:
- C:\Program Files\Microsoft DirectX SDK (June 2010)\Include
- C:\Program Files\Microsoft SDKs\Windows\v7.1\Include
库文件:
- C:\Program Files\Microsoft SDKs\Windows\v7.1\Lib
- 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复制出来也行,注意看需要修改的哟)
- setlocal
- set PATH=%~dp0python_bin;%PATH%
- "%~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为单位 .
- set PATH=%~dp0depot_tools;%PATH%
- call python depot_tools\gclient.py config https:
- call python depot_tools\gclient.py sync --force
- set GYP_GENERATORS=msvs
- 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
- @echo off
- set _devenv="D:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\devenv.com"
- set _solution_file="%~dp0%1"
- echo ====================================== >>"%2_Results.log"
- echo [%DATE% %Time%] Start compile sequence >>"%2_Results.log"
- echo %_solution_file% >>"%2_Results.log"
- %_devenv% %_solution_file% /build "%2|Win32" /Out "%2_Results.log"
- if not %errorlevel% == 0 echo stop!!! %_solution_file% failed! Error: %errorlevel% >>"%2_Results.log"
- if %errorlevel% == 0 echo %_solution_file% compiled successful >>"%2_Results.log"
- if not %errorlevel% == 0 pause
- echo [%DATE% %Time%] Finished compile sequence >>"%2_Results.log"
- echo ====================================== >>"%2_Results.log"
- echo +>>"%2_Results.log"
- echo +>>"%2_Results.log"
- 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) |