手机版firefox浏览器fennec编译测试eg
fennec是firefox在嵌入式平台的简化版, 也被称为firefox的手机版,是Meego平台使用的浏览器。 因为被Meego使用的缘故, 它提供了一套基于Qt的界面实现。
fennec是一种生活在撒哈拉大沙漠里的长耳狐, 长得很是可耐, 上个片片给大家欣赏一下:
可耐到让俺很垂涎的地步。 应bug的要求, 尝试编译了一下这个工程。 既然fennec这么可耐, 咱爱屋及乌,当然编译这个浏览器也要尽心尽力拉。
下载+解压缩
下载源码包:http://repo.meego.com/MeeGo/builds/trunk/preview/core/repos/source/fennec-qt-2.0a1pre0721.4-1.1.src.rpm
俺一般用mc(midnight commander)去解压rpm和里面的cpio文件, 得到一组文件列表, 我们只用其中的fennec源码包, 如下:
tar jxvf fennec-tip-91da083f3478-af67cbcea09d.tar.bz2
解压出mozilla-central目录
构建
构建之前要设置环境变量设置:
$ export QTDIR=/usr/local/Trolltech/Qt-4.6.3
编译的命令: make -f client.mk build NSDISTMODE=copy
这个命令是autoconf+configure的集合体, 所以耗时很长, 大概要几分钟。 这个命令会在mozilla-central目录下创建一个qtdebug目录, 然后所有的Makefile都生成在这个目录里, 类似shadow build的效果。
如果你不幸在运行编译命令之前忘记export QTDIR了, 那么恭喜你, 前面等待的时间算是白费拉。 必须要make distclean才能让新的环境变量起作用。 环境清理的命令是:
$ make -f client.mk distclean
编译过程中的问题和解决方法
笔者在编译的过程中遇到了两个主要的问题, 一是找不到cpuid.h头文件。 出问题的代码在mozilla-central/xpcom/glue/SSE.h
240 #if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)
241 #if 0//BJBJ
242 [...]
Tags: browser, embedded, fennec, firefox, MeeGo, mozilla
Posted on August 27th, 2010 in Linux技术, Qt技术, 其他平台技术 | No Comments ».