原文链接:http://qt-project.org/wiki/Building-Qt-5-from-Git-SimplifiedChinese
简介
本文将试图给出从Git中获取模块化的QT5并构建它的一些提示。请随时更新本篇文章以反映开发过程中的变化。这些说明是为Linux准备的,用于其他平台是你可能需要一些调整。
获取源码
首先克隆 git 中 Qt5 的顶层仓库:
- git clone git://gitorious.org/qt/qt5.git qt5
- cd qt5
按照 README 文件,我们初始化仓库。下面的命令克隆Qt5的各个子模块(sub-modules):
- ./init-repository
- ./qtrepotools/bin/qt5_tool -p
在继续之前我们要确认所有子模块与最新的远端(remotes)配置同步:
- git submodule foreach 'git fetch --all'
- git submodule foreach 'git checkout -b staging-master staging/master || echo Ignoring module $name'
- # 对 qtbase 和 qtwebkit 的特殊处理
- cd qtbase
- git checkout master && git reset --hard origin/master
- cd ../qtwebkit
- git checkout -b qt-modularization-base origin/qt-modularization-base
- cd ../
配置与构建
现在设置系统PATH使得我们使用Qt5的工具而不是系统提供的老的Qt4的工具:
- export PATH=$PWD/qtbase/bin
现在可以为构建进行配置。现阶段最好禁用 tests, examples 和 demos:
- ./configure -nokia-developer -nomake examples -nomake demos -nomake tests -no-gtkstyle
注意我们禁用了 gtk 样式。这是因为在一些系统(至少是SUSE和Gentoo)中 `pkg-config —cflags gtk+-2.0` 返回的路径中包含了系统Qt4的头文件目录。 现在像通常一样使用make (选择合适的 -j 选项来利用CPU多核性能):
清理
要 真正 清理源码树,使用:
- git submodule foreach 'git clean -dffx'
因为在顶层仓库中执行的 make confclean 不再工作。 |