提前架建Linux版本的Chromium浏览器


  此文描述如果在Linux操作系统上编译构建Chromium浏览器。假如你对测试chromium或想移植chromium到别的平台请你继续阅读。

  提示:目前还没有在Linux运行的Chromium浏览器,虽然Chromium的部分子模块在linux编译过和一小部分的单位测试通过过,所有的那些也只是一条命令“all tests pass"执行了而已!

  前提条件

  注意:我们的想法是你可以在任一可适用的现代Linux发行版中编译构建Chromium,并且我们尝试尽全力列出系统编译前提条件。当然,请你能忍受Linux移植还只处在开始阶段这一现实情况,而且我们在大多数的Linux发行版中测试是有限的.在Chromium内部,我们的开发平台是Ubuntu8(hardy heron)的一个变种,我们希望你能在此系统平台中有个好运。

  Linux平台需要以下软件方能编译构建:

  Subversion >= 1.4(提示:假如你使用的是tarball(压缩包格式),很难关注代码的改动,你需要1.5版本,我们以后会修复它的)(译者:Subversion是一种比CVS高级的版本控制软件)

  pkg-config >= 0.20 (译者:pkg-config是开发用的库配置工具)

  Python >= 2.4 (译者:Python编程语言,此处指Python环境,工具)

  Perl >5.x

  gcc/g++ >= 4.2

  bison >= 2.3 (译者:GNU bison语法分析转换工具?)

  flex >= 2.5.34

  gperf >= 3.0.3

  libnss3-dev >= 3.12

  在Ubuntu8系统中,你可使用下面的命令一次得到所有的软件:

   $ sudo apt-get install subversion pkg-config python perl g++ bison flex gperf libnss3-dev

  获取代码

   1.选择编译的目录.

  我们将在此文档中称此目录为变量$CHROMIUM_ROOT.

   2.获取代码库工具.

  $cd $CHROMIUM_ROOT

  $ svn co http://src.chromium.org/svn/trunk/depot_tools/linuxdepot_tools

  (或,下载.tar.gz格式的压缩包文件:depot_tools_linux.tar.gz

  为了保持此编译说明文档的独立完整,我们假设你的depot_tools目录在你的编译目录($CHROMIUM_ROOT)下,

  但它不是必需这样,你可把它放置到任何地方,然后在你的PATH环境变量或其它变量中增加此路径,

   3.因为很多人对此高度感兴趣导致我们的临时工作服务器不能访问,请试着下载从SVN中的代码快照,解压缩它,

   并按照下的的指示升级更新代码,你将通过gclient同步工作得到相同的结果.

   ? ? ??? $ cd $CHROMIUM_ROO

   $ export LANG=C # temp workaround for gclient behavior

   $ ./depot_tools/gclient config http://src.chromium.org/svn/trunk/src

   $ ./depot_tools/gclient sync

   提示:默认的,运行gclient同步工具,depot_tools将会自动的将代码更新到最新版本(随时),

  如果你想关掉此行为请查阅depot_tools文档页内容.

  构建???

  编译构建当前的Chromium linux子集:

  $ cd $CHROMIUM_ROOT/src/chrome

  $ ../third_party/scons/scons.py Hammer

  在编译后,可执行程序放置于$CHROMIUM_ROOT/src/chrome/Hammer 目录

  问题处理

  sh: d: not found while processing Hammer/webkit/WebCore/xml/XPathGrammar.y

  你没有安装bison,我们正修补我们的编译脚本使用之更加易用和友好,但你读此文档时,我们的代码改变记录中还没有更新!

相关内容