最近想了解一些以HTML5为导向的移动OS,了解了相关资料,发现Firefox OS没有像Tizen和Sailfish那么波折,与相应的硬件厂商关联度低,于是从它先入手吧。
Firefox Os亦称为”Boot to Gecko”或”B2G”(以codename命名),基于Linux和Mozilla的Gecko技术。其实还是在Android的基础上进行修改,等会可以从运行的模拟器看出。那么要如何编译B2G源码和运行模拟器呢?下面一一介绍:
0.说明
下面步骤均是在Ubuntu12.04 64bit环境下操作。
1.配置编译环境,安装相应工具:
sudo apt-get install autoconf2.13 bison bzip2 ccache curl flex gawk gcc g++ g++-multilib git ia32-libs lib32ncurses5-dev lib32z1-dev libgl1-mesa-dev libx11-dev make zip
2.克隆库
git clone git://github.com/mozilla-b2g/B2G.git
3.配置为模拟器
cd B2G
./config.sh emulator
此时会从网上同步emulator相关源码。
4.编译
./build.sh
编译过程发现如下错误:
wget -c http://ftp.mozilla.org/pub/mozilla.org/xulrunner/nightly/2012/09/2012-09-20-03-05-43-mozilla-central/xulrunner-18.0a1.en-US.linux-x86_64.sdk.tar.bz2
--2013-04-06 10:40:56--http://ftp.mozilla.org/pub/mozilla.org/xulrunner/nightly/2012/09/2012-09-20-03-05-43-mozilla-central/xulrunner-18.0a1.en-US.linux-x86_64.sdk.tar.bz2
Resolving ftp.mozilla.org (ftp.mozilla.org)... 63.245.215.56
Connecting to ftp.mozilla.org (ftp.mozilla.org)|63.245.215.56|:80... connected.
HTTP request sent, awaiting response... 302 Found
Location: http://61.187.150.155/download/71283387/73025635/3/bz2/35/182/1365158953251_950/xulrunner-18.0a1.en-US.linux-x86_64.sdk.tar.bz2 [following]
--2013-04-06 10:40:56--http://61.187.150.155/download/71283387/73025635/3/bz2/35/182/1365158953251_950/xulrunner-18.0a1.en-US.linux-x86_64.sdk.tar.bz2
Connecting to 61.187.150.155:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2013-04-06 10:40:56 ERROR 404: Not Found.
make[1]: *** [install-xulrunner-sdk] Error 8
make[1]: Leaving directory `/home/xinu-disk/gecko/B2G/gaia'
make: *** [gaia/profile.tar.gz] Error 2
查找了一下,找不到对应压缩包,发现地址更改了,于是做如下修改:
修改源码下gaia/Makefile文件,更新XULRUNNER_SDK_URL:
将
XULRUNNER_SDK_URL=http://ftp.mozilla.org/pub/mozilla.org/xulrunner/nightly/2012/09/2012-09-20-03-05-43-mozilla-central/xulrunner-18.0a1.en-US.
修改为:
XULRUNNER_SDK_URL=https://ftp.mozilla.org/pub/mozilla.org/xulrunner/nightly/2012/09/2012-09-14-03-05-38-mozilla-central/xulrunner-18.0a1.en-US.
5.运行模拟器
上面修改后继续编译完成就可以开始运行模拟器:
./run-emulator.sh
运行的界面如下:
至此,就编译了GecKo的源码并将模拟器运行起来了。
网友评论