趁编译源码的时候写下此篇以记录!
1.前提(编译环境)
上网条件:VPS 翻墙!
硬件要求:Ubuntu14.04(以上)、CPU双核(以上)、150G磁盘空间(以上)、2G RAM(以上)。
软件要求:https://blog.csdn.net/nxh_love/article/details/8834849
https://source.android.com/setup/initializing#installing-required-packages-ubuntu-1204
2.什么是Firefox OS ?
Firefox OS 是一个为网页设计而生的能编译和独立的手机网页操作系统,我们相信在接下来的时代,网页应用将充满整个新兴操作设备,这也为当前许多网页开发者不需要太多的学习新的计算机语言来开发网页应用,为当前网页开发者提供了良好的平台。专案名称为Boot to Gecko,也称B2G.
(1) Firefox OS 是基于开源的网页技术(HTML,CSS,JavaStript)。
(2) Firefox OS的UI设计全部是基于这些开源网页技术。
(3) 桌面菜单照相应用通话界面等,所有这些都是基于HTML。
(4) 最新颖的一部分是你可以自己编辑手机上应用的UI如果你知道这些开源网页技术。
(5) 你可以将Firefox OS 划分为三部分,分别是 Gonk 、Gecko、Gaia 。
3.配置翻墙
(前提是有Vultr:https://segmentfault.com/a/1190000015558387)
3.1安装shadowsocks
# sudo apt-get install python-pip
# pip install shadowsocks
新建配置文件:/etc/shadowsocks/config.json
内容如下:
{
"server":"koumakan.cc",
"server_port":14235,
"local_address": "127.0.0.1",
"local_port":1080,
"password":"70531e5054d83dfbfcfef74a13a1fb7cc034a9d0",
"timeout":300,
"method":"aes-256-cfb",
"fast_open": true,
"workers": 1
}
设置http代理:
# sudo apt-get install privoxy
修改文件中的配置:
# cd /etc/privoxy
# sudo vim config
反注释1337行,forward-socks5 / 127.0.0.1:1080 . ( 为自己shadowsocks监听的本地端口)
配置环境变量 :vim ~/.bashrc
添加如下行:alias ssp='export http_proxy=http://localhost:8118 && export https_proxy=http://localhost:8118';
执行:source ~/.bashrc
翻墙的终端中输入ssp,设置代理,然后就可在当前终端中进行翻墙
3.2安装Repo工具:
# mkdir ~/bin
# export PATH=~/bin:$PATH #添加path环境变量到.bashrc文件末尾
# ssp
# curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
# sudo chmod a+x ~/bin/repo
手动启动shadowsocks客户端: # sslocal -c /etc/shadowsocks/config.json &
4.下载、编译FireFox OS(B2G)源码
4.1 获取源码
Get Source Code
1 |
|
这个完成后,会发现B2G文件下,只有一些脚本文件,根本没有source code 。接下来要继续执行
Get Source Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
|
执行./config 后,目前Firefox OS 支持的设备和模拟器会显示出来,由于公司有nexus-5这个台机器,所以源码下载此版本。
在下载之前注意参考我的另一篇博客:Nexus-5刷机后的界面无app图标且黑屏的问题分析。
Get Source Code
1 2 3 |
|
随即开始下载nexus-5版本的源码。此时,已经在获取source code了,下载过android source code的人都应该知道这是一个漫长的过程。
4.2 编译源码
不过在编译之前呢,先获取下最新的code:
Get Source Code
1 2 |
|
也可以只更新某一模块的code,比如:
Get Source Code
1 2 3 |
|
注意!!
1、编译之前要下载r11b版本的NDK,将其解压在用户的~/.mozbuild目录中。
2、JDK版本需是:
3、make 3.81
直接执行以下命令对源码进行编译:
Get Source Code
1 |
|
注意:在编译过程中,会提示缺少某些工具软件、或者某些工具软件版本过低,照错误提示解决即可。
参考:https://developer.mozilla.org/en-US/docs/Archive/B2G_OS/Building_and_installing_B2G_OS
5.Installing B2G OS on a mobile device
参考:https://developer.mozilla.org/en-US/docs/Archive/B2G_OS/Building_and_installing_B2G_OS