CEF中文教程(google chrome浏览器控件) -- CEF编译


    这部分讲解CEF的分支信息并介绍下载编译和打包源代码

背景:

      CEF项目是做为Chromium的扩展项目而存在的,CEF跟Chromium一样地维护两个版本,开发版和发布版。CEF源代码既可以手动编译,也可以用工具自动编译

发展:

     CEF项目在不断的发展中,你可以从这里看到整个项目的文件 trunk,因为当前的版本紧跟Chromium,所以不推荐拿当前的版本来开发发布版的产品。下面的链接可以用来下载CEF的开发版源码:
     remind:你点开上面的链接时,你会发现这是一个svn工程的目录,如果以前是用VSS的,你可能觉得svn很陌生,不要尝试一个一个地去下载里面的文件。这里有个简单的方法可以下载整个文件夹:先下载一个TortoiseSVN,下完后安装,但是你不会看到有什么的TortoiseSVN的运行程序,因为它是内嵌到Windows里面的,你应该在任意的盘符下面创建一个空的文件夹,右键点击这个文件夹,点击菜单项【TortoiseSVN】->【export】,在URL文件框里面输入上面的链接后点确定,然后现在个工程文件都会下下来。

发布版:

     CEF随着Chromium发布版也提供一个最新的发布版,推荐用户用发布版本做为开发产品的环境,原因有如下几点:
     1.二进制的CEF是用特定的Chromium发布版编译出来的
      2.发布版的CEF/Chromium经过了更好的测试,而且更加适合开发发布版的应用程序
      3.发布版更加稳定
      4.CEF发布版可以包含必要的Chromium/WebKit版本
      5.CEF以后的更新不会干扰用户的发布计划

CEF版本号有如下形式:X.Y.Z,其中X是CEF主版本号,Y是发布版版本号,而Z是CEF校对号,有关CEF和Chromium版本更详细的内容,你可以去include/cef_version.h里面找到,下面的表格列出当前的CEF发布版本:
      
发布版本Chromium版本CEF1支持性CEF3支持性
96317
1025 18
108419
118021
127123
136425
145326

你可以在下面的链接中下载发布版的CEF, 其中YYYY是发布版的版本号:

这里值得注意的是版本963和1025是只包含有CEF1的源代码,要想了解CEF发布版的版本号怎么来的,你可以点击旁边这个链接:  here

编译源代码:

    当前支持在Windows,Mac OS-X和Linux环境下编译源代码,而要想编译成功,你的电脑必须至少有4GB的系统内存(因为我用的Windows,所以在Mac或Linux环境下的要求我就没有翻译了)。
    在编译Chromium和CEF源码之前,你必须配置好你的编译环境:
1.为你的操作系统和开发环境安装必要的包:
    Windows环境下点击右边的链接:  http://www.chromium.org/developers/how-tos/build-instructions-windows(这个我将在下一章中给出译文)
    配置好操作系统和编译环境以后,还要用旁边的链接去下载TortoiseSVN工具:  http://sourceforge.net/projects/tortoisesvn/files/1.6.16/Application/
2.配置环境可以影响GYP
   CEF目前还不支持组件开发
   Windows - 如果你的操作系统里面安装了多个Virual Studio,你可以设置环境变量GYP_MSVS_VERSION为一个适当的值,如果你想用VS2008来编译工作,你应该把这个值设成2008,如果你想用Vs2010 Express来编译工程,那你就应该把这个环境变量设成2010e, 如果是别的Visual Studio版本,那你就要去Chomium帮助文档去查找更详细的信息,但是估计也应该是同一个套路,假如你是vs2005,那肯定就是设成2005了。

自动的方法:

   CEF提供工具,用来自动下载、编译、打包Chromium和CEF源代码,这个方法对开发版和发布版是同样有用,你可以按下面的步骤来完成自动操作:

1.下载自动工具 automate.py:
   用SVN checkout下面的URL: 
http://chromiumembedded.googlecode.com/svn/trunk/cef1/tools/automate /path/to/automate
2.运行automate.py脚本:
   在任何合适的时间,你可以运行automate.py这个脚本(如每周每天每次CEF提交的时间),并使用你想要的CEF版本。
python /path/to/automate/automate.py --download-dir=/path/to/download --url=http://chromiumembedded.googlecode.com/svn/branches/1084/cef1

    如果这个操作成功了,一个二进制形式的包会被创建在   /path/to/download/chromium/src/cef/binary_distrib
如果你要想查找完整的使用介绍,点下面的链接:  automate.README.txt 
   这个方法也被完美地整合到了一些自动编译系统如 TeamCity
(译完这段我感到浑身冷汗,因为什么TeamCity、TortioseSVN...全都一无所知,想想从业也三四年了,却离it这条路越走越远,在上个公司呆的两年多完全是封闭的两年多,天天整些CAD,用写好的API,做些重复的工作,什么新的技术都没学到,反而把老本都蚀完了,现在是时候奋起直追了。但转念一想,我还能再追几年,以我的年纪我还能追几年? 学什么走哪块,才能让我虽不说蒸蒸日上但却能有口盒饭吃呢?)

手动下载:


    Chromium和CEF可以手动下载和编译,但这更加复杂,所以不向所有用户推荐。
开发版:
    下面这些下载的介绍仅适合CEF1&CEF3开发版。
     1.安装depot_tools并且下载Chromium源代码,你可以按照这个链接的内容来做http://dev.chromium.org/developers/how-tos/get-the-code,也可以按照下面的四个步骤来做,但是为了避免一些潜在的问题,你最好设置chromium和depot_tools的下载目录尽可能的短,并且不要包含空格和特殊字符。
     A.  装一个1.6.x版本的SVN端,并且加到你的PATH里面去
     B. 通过SVN来下载depot_tools
  svn co http://src.chromium.org/svn/trunk/tools/depot_tools
     C. 增加 depot_tools的目录到你的PATH,在Windows下depot_tools的路径应该要放在TortoiseSVN的前面
    D. 创建一个Chromium签出目录(例如,/path/to/chromium),并且配置gclient如下:
cd /path/to/chromium
gclient config http://src.chromium.org/chrome/trunk/src
     remind:  上面这段你只要复制到cmd里面去运行就可以了

    2. 在CEF的顶层目录下查看 CHROMIUM_BUILD_COMPATIBILITY.txt,并找到你需要的Chromium版本,这可能会发生改变,因为CEF是随着最新版本的Chromium改变而改变的
   3. 更新Chromium到合适的版本
cd /path/to/chromium
gclient sync --revision src@chromium_revision --jobs 8 --force
   4. 下载CEF源代码到"cef"文件夹,而且这个文件夹必须包含在Chromium的"src"文件夹目录下,你最好只下载CEF1或CEF3而不要两者都下,假设你的Chromium源代码下载在 "/path/to/chromium/src",那么你的CEF源代码就应该放在"/path/to/chromium/src/cef"。注意不管你下的是CEF1或CEF3,文件夹名都必须命名为"cef"
cd /path/to/chromium/src
svn co http://chromiumembedded.googlecode.com/svn/trunk/cef1 cef

发布版:
     发布版和开发版基本的操作是一样的,只不过是把有Debug的地方改成Release而已。具体的你可以查看原文链接。

手动编译:

    1.运行cef_create_project脚本(windows下用.bat, OS-X和linux下用.sh)去产生一个在GYP配置下的编译文件
cd /path/to/chromium/src/cef
./cef_create_projects.sh
    2.编译CEF
    windows下你可以直接用Visual Studio 的.sln文件编译,做为替代的方法,你也可以在命令行下运行脚本build_projects来编译整个工程,
cd /path/to/chromium/src/cef/tools
build_projects.sh Debug

手动打包:

     当编译好开发版和发布版后,你可以用make_distrib工具(windows用.bat,OS-X和Linux用.sh)去创建一个二进制分发包。
cd /path/to/chromium/src/cef/tools
make_distrib.sh
     如果这个过程成功了,一个二进制的分发包会生成在 /path/to/chromium/src/cef/binary_distrib目录中。
     你可以去make_distrib.py脚本下看到更多的使用信息。

评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值