zoukankan      html  css  js  c++  java
  • WebRTC编译具体介绍


    WebRTC编译具体介绍--记录+转载


    原文地址:http://blog.csdn.net/temotemo/article/details/7056581


    WebRTC编译

    本人环境:

    操作系统:XP SP3

    VS 2013



    编译源代码之前所需的工具


    获取源代码工具:

    1、 首先须要安装获取源代码的工具SVN(项目代码版本号管理工具,Google也用这个)

    TortoiseSVN 1.6.12

    http://sourceforge.net/projects/tortoisesvn/

    2、下载并安装msysgit和Tortoisegit

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

                    选择Git-1.7.4-preview20110204.exe,下载并安装

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

                    选择适合自己系统的版本号。下载并安装(注:Tortoisegit仅仅是一个gui。必须安装msysgit)

                    Tortoisegit安装时会找到git文件夹并自己主动配置好。

        把msysgit中bin文件夹手动加入到系统环境变量PATH中,比方我的文件夹是“D:/ProgramFiles/Git/bin”

     

    3. 下载并安装Python,建议安装Python2.6,比方安装在C盘

    安装将C:Python26运行文件夹自己主动被加入入系统环境变量PATH中。

    (WebRTC是用C++写的为什么要用到Python,由于WebRTC源代码和depot_tools里面有非常多.py的Python程序。用于配置项目。生成各种环境下的project文件)

     

    官方要求说明:

    http://www.webrtc.org/reference/getting-started/prerequisite-sw

    1、 Depot Tools

    1. You'll need to have the depot tools installed:

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

     

    2. You need git installed (needed for getting WebM source):

    http://git-scm.com/

    /*====================================================*/


    好了,外部工具准备得几乎相同了

    4. 下载并配置depot_tools

     非常多人都建议建立一个存放depot_tools的文件夹,command进入该文件夹

    svn co http://src.chromium.org/svn/trunk/tools/depot_tools

    这在Linux以下应该是要这样做的,只是在Windows系统下,我认为这样做更方便一点:

    推荐操作:

    由于之前安装了SVN、Git等工具,所以我们能够直接这样取depot_tools工具:

    回到桌面。右击


    直接选择SVN Checkout


    将  http://src.chromium.org/svn/trunk/tools/depot_tools  填到URL of respository去,Checkout directory能够自己随便指定你要存盘的路径(建议存在不要有中文的路径。由于一会要加入到系统的PATH的),其它默认,然后点击OK,自己主动下载,就能够拿到depot_tools工具了。

     

    重头戏来了!获取WebRTC源代码:

    源代码网址为   http://webrtc.googlecode.com/svn/trunk/

    5. 为了把源代码抓下来,能够建立一个WebRTC的源代码文件夹

    比方D:WebRTC

    一般操作:(不推荐)

    用DOS命令进入该文件夹,然后

    svn checkout http://webrtc.googlecode.com/svn/trunk/

    下载完毕后。 WebRTC下会得到一个默认名为trunk的文件夹,里头就是WebRTC源代码了。仅仅是源代码而已,并没有编译的对应project文件。

    然后

    >gclient config https://webrtc.googlecode.com/svn/trunk     (要下载1个多G的文件,网速不好的。能够去玩一盘dota回来)

    >gclient sync --force     (同步项目文件)

    > gclient runhooks --force     (生产各种项目文件,像VS项目文件webrtc.sln文件,Linux的MakeFile文件)

    等等…可是我发现非常多尝试编译WebRTC的同学在DOS命令进入操作就出现了各种问题了、、、

    比方:Installing subversion ...

    [-] XMLHTTP 80072ee2: Cannot make HTTP request (操作超时

    ... Failed to checkout svn automatically.

    Please visit http://subversion.tigris.org to download the latestsubversion clie

    nt

    before continuing.(这个是网络连接问题,多试几次)

     

    F:WEBRTCwebrtc>gclient.bat confighttps://webrtc.googlecode.com/svn/trunk

    Installing python ...(这个是配置问题)

     

    等等令人抓狂的问题。

    本来我们已经安装好了python、SVN了,怎么还须要Installing呢、、、并且会让你等非常久,郁闷吧!

    推荐操作:

    可是我这样做更好:

    选择WebRTC文件夹,右击->


    然后选择Git Bash,然后就直接进入该文件夹了:(例如以下图)


    OK了,是时候获取WebRTC源代码来生产project了(假设单纯是为了获取WebRTC源代码,全然能够依照获取depot_tools那样来操作。可是我们还要获取完源代码后须要生产project文件的)

    第一步,拿源代码:svn checkout http://webrtc.googlecode.com/svn/trunk/   (源文件不是非常大,几十M)

    第二步,拿项目project相关配置文件:gclient config https://webrtc.googlecode.com/svn/trunk    (文件非常大,1G多,要等非常久哦)

    第三步,与Google同步项目文件,获取最新project:gclient sync --force

    第四步。生产各平台的项目文件:gclient runhooks --force

    注意:在第四步之前。假设在Windows平台下。须要安装Windows的DirectX SDK和SDK 7.1

    下载地址:

    SDK 7.1:

    http://www.microsoft.com/download/en/details.aspx?

    displaylang=en&id=8279

    DirectX SDK:

           http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=6812

    再注意:

    安装SDK 7.1的时候,一定要注意SDK 7.1的安装路径,由于在WebRTC项目在配置中有规定,配置文件在.. . runksrcuild 名为common.gypi 的文件

    如图:


    就是说Google默认SDK 7.1安装在C盘下。假设同学你不想安装在C盘下。那么就要改动一下这个配置文件了。不然的话,运行第四步的时候就会出现各种warning问题的。

    假设不想安装SDK。能够从这里下所依赖的文件:

    svn co http://vsfiltermod.googlecode.com/svn/trunk/src/BaseClasses。然后把文件放置在这个路径:C:/ProgramFiles/Microsoft SDKs/Windows/v7.1/Samples/multimedia/directshow/baseclasses

     

    假设你顺利完毕以上四步的话,并且在第四步的时候没有出现什么问题的话,那么恭喜你,就能够在trunk文件夹下看到Windows系统平台下的webrtc.sln项目project文件了。Linux的项目文件在trunkuild的install-build-deps.sh脚本。

    还有Mac OS和Android等等。。。

     

    Linux平台须要安装的东西很多其它:

    g++ (>= 4.2)

      python (>= 2.4)

      libasound2-dev

      libpulse-dev

      libjpeg62-dev

      libxv-dev

      libgtk2.0-dev

      libexpat1-dev

     

    For 32-bit builds on a 64-bit system:

      lib32asound2-dev

      ia32-libs

     

    好了。本人是在VS 2008上研究的,打开webrtc.sln,然后生成解决方式,眼下为止已经解决方式里有122个项目,音频引擎。视频引擎,还有非常多測试代码。视频聊天測试,API測试。自己主动測试,VP8和H.264编码測试,声音測试。通道測试、、、等等,所有生成完毕大概半个小时左右。。。、、、OK,Enjoy!

    编译时要注意。解决方式的配置:

    保证有例如以下配置:包括文件 DirectX SDKInclude和$(WindowsSdkDir)include



    库文件:DirectX SDKLibx86    DirectX SDKLib   SDKsWindowsv7.1Lib




    以后有时间再和大家分享这些測试。

    
  • 相关阅读:
    UTF-8 GBK UTF8 GB2312 之间的区别和关系
    为什么要需求分析
    数据库建表原则
    使用SQL存储过程有什么好处 用视图有什么好处
    SQL使用视图的优缺点
    百度地图添加多个行政区划
    性能测试日志分析之awk基础用法
    Nginx 安装配置
    linux的top命令参数详解
    Java小程序Linux下运行
  • 原文地址:https://www.cnblogs.com/wzjhoutai/p/7269439.html
Copyright © 2011-2022 走看看