实践编译 Firefox Fennec

编译 Firefox的官方link在 https://wiki.mozilla.org/Mobile/Fennec/Android, 我只是记录下实践过程而已

Linux 下的 Firefox 是用gcc/g++ 基于glibc编译的

编译Android 下的 Firefox 需要使用 Android SDK 和Android NDK

Android 的 SDK/NDK tools 使用了32 libs, 所以在 64位 Linux下,还要安装若干32位的libs

If you‘re using a 64-bit Linux, you‘ll need to install 32 bit libs to allow the toolchain binaries to run. Otherwise you
may get a "bash: file not found" error when trying to use any of the SDK/NDK tools.

确保 java javac都是1.7, 我的版本不一致,就遇到问题了

对于Android SDK的要求

Members of the Fennec team are successfully building Fennec with SDK Build Tools version
21, SDK Platform Tools 21,
and Android SDK Tools 23.0.5.
You will also need the "Android Support Library" and "Google Play Services" under Extras. In addition, you should check an Android SDK Platform, such as Android
5.0 (API 21). You can uninstall & remove all other/older SDK Platforms as well as older versions of the SDK Tools/SDK
Build Tools/SDK Platform Tools, and doing so might in fact stop the build from getting confused.

我非官方要求,而是括号中的版本成功编译。(基于API 21(Android 5.0)遇到问题,我也不想编译5.0的,所以用 API 19)

SDK
Build Tools version 21   (19.0.3)

Android
SDK Tools 23.0.5.
  ( 22.6.2)

Android SDK Platform  API 21  (19)

Android
Support Library & Google Play Services

Firefox  编译要就写 .mozconfg 文件, 我的内容如下:

cat .mozconfig

#

ac_add_options --with-android-ndk="$HOME/android-ndk-r8e"

ac_add_options --with-android-sdk="$HOME/adt-bundle-linux-x86_64-20131030/sdk/platforms/android-19"

# android options

ac_add_options --enable-application=mobile/android

ac_add_options --target=arm-linux-androideabi

ac_add_options --with-ccache

mk_add_options MOZ_OBJDIR=./objdir-droid

mk_add_options MOZ_MAKE_FLAGS=-j4

之后运行  ./mach
build  进行编译,要生成 apk文件,需要执行 ./mach papkage

当系统显示:Your
build was successful!, 就恭喜了!

如果改了其中某个文件,使用 ./mach
<path> (比如:./mach build mozglue/linker)可以节约时间

时间: 2024-11-04 01:40:36

实践编译 Firefox Fennec的相关文章

阿里云centos6.5实践编译安装LNMP架构web环境

LNMP 代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构. 本次测试需求: **实践centos6.5编译安装 LNMP生产环境 架构 web生产环境 使用 ngx_pagespeed 优化前端 xcache 优化php 用 google_perftools 优化nginx 和 php内存分配 ** 作为 Web 服务器:相比 Apache,Nginx 使用更少的资源,支持更多的并发连接,体现更高的效率. 作为负载均衡服务器:Nginx 既可以在内部直接支持Rail

windows下编译firefox

可以自己定制下.估计很简单..... 官方文档扫一遍: https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Build_Instructions 以下是中文相关博客: http://www.cnblogs.com/jianghust/archive/2010/06/14/1758234.html http://blog.163.com/[email protected]/blog/static/514385182010

编译安装LAMP[两种结合方式]

本文旨在实践编译安装LAMP环境,搭建Zblog系统,使用Xcache为PHP加速,分离PHP与Apache Server LAMP基础知识 Linux + Apache + MySQL[MariaDB] + PHP[Perl|Pyton] 是一套基础的web环境: Apache有2.2版本,和最新的2.4版本,2.4版本支持Event MPM可用作生产环境,在http2.2中有3种MPM,为不同的进程文件,切换需要重启Apache服务:而2.4中MPM做成了DSO,可动态加载切换: Apach

编译原理简单介绍

编译原理学习导论 大学课程为什么要开设编译原理呢?这门课程关注的是编译器方面的产生原理和技术问题,似乎和计算机的基础领域不沾边,可是编译原理却一直作为大学本科的必修课程,同时也成为了研究生入学考试的必考内容.编译原理及技术从本质上来讲就是一个算法问题而已,当然由于这个问题十分复杂,其解决算法也相对复杂.我们学的数据结构与算法分析也是讲算法的,不过讲的基础算法,换句话说讲的是算法导论,而编译原理这门课程讲的就是比较专注解决一种的算法了.在20世纪50年代,编译器的编写一直被认为是十分困难的事情,第

编译原理学习导论

编译原理学习导论 大学课程为什么要开设编译原理呢?这门课程关注的是编译器方面的产生原理和技术问题,似乎和计算机的基础领域不沾边,但是编译原理却一直作为大学本科的必修课程,同一时候也成为了研究生入学考试的必考内容.编译原理及技术从本质上来讲就是一个算法问题而已,当然因为这个问题十分复杂,其解决算法也相对复杂.我们学的数据结构与算法分析也是讲算法的,只是讲的基础算法,换句话说讲的是算法导论,而编译原理这门课程讲的就是比較专注解决一种的算法了.在20世纪50年代,编译器的编写一直被觉得是十分困难的事情

手把手教你编译安装MariaDB

MariaDB是什么? MariaDB是MySQL的一个分支,由于Oracle有可能对MySQL闭源,所以分离了出来(MySQL先后被Sun.Oracle收购). 但是除了作为一个Mysql的“向下替代品”,MariaDB包括的一些新特性使它优于MySQL. 官网说明 The instructions on this page will help you compile MariaDB from source. Links to more complete instructions for sp

编译原理书籍推荐

大学课程为什么要开设编译原理呢?这门课程关注的是编译器方面的产生原理和技术问题,似乎和计算机的基础领域不沾边,可是编译原理却一直作为大学本科的必修课程,同时也成为了研究生入学考试的必考内容.编译原理及技术从本质上来讲就是一个算法问题而已,当然由于这个问题十分复杂,其解决算法也相对复杂.我们学的数据结构与算法分析也是讲算法的,不过讲的基础算法,换句话说讲的是算法导论,而编译原理这门课程讲的就是比较专注解决一种的算法了.在20世纪50年代,编译器的编写一直被认为是十分困难的事情,第一Fortran的

网页设计中手风琴效果的20个最佳实践

在这篇文章中,分享一组网页设计中手风琴效果的20个最佳实践.当你想在有限的页面空间内展示多个内容片段的时候,手风琴(Accordion)效果就显得非常有用,它可以帮助你以对用户非常友好的方式实现多个内容片段之间的切换. 您可能感兴趣的相关文章 Web 开发中很实用的10个效果[源码下载] 精心挑选的优秀jQuery Ajax分页插件和教程 12个让人惊叹的的创意的 404 错误页面设计 让网站动起来!12款优秀的 jQuery 动画插件 十分惊艳的8个 HTML5 & JavaScript 特效

计算机相关经典书籍汇总

1.计算机科学概论计算机科学概论 2.计算机数学基础高等数学线性代数概率论与数理统计离散数学及其应用离散数学教程(北大版)什么是数学具体数学:计算机科学基础 3.C语言C primer plusThe C programming languageC和指针C专家教程C陷阱与缺陷c语言解惑C标准库你必须知道的495个C语言问题 4.算法与数据结构数据结构与算法分析—C语言描述算法导论编程珠玑编程珠玑II计算机程序设计艺术卷1计算机程序设计艺术卷2计算机程序设计艺术卷3数据结构(清华版) 5.电子技术