android系统firefox,Android平台Firefox——Fennec编译手记
Android平臺Firefox——Fennec編譯手記
Firefox for mobile,開發代號為Fennec。詳情參見維基百科:Click here!
官方手冊
1)準備環境
1.1)安裝Java
第一步安裝Sun Java jdk6(Android SDK依賴)
#?Ubuntu?11.10andafter
Download?Java?fromOracle
sudo?mkdir?/opt/java
sudo?mv?~/Downloads/jdk-6u29-linux-x64.bin
sudo?chmod?+x?./jdk-6u29-linux-x64.bin
sudo?./jdk-6u29-linux-x64.bin
ln?-f?-s?/opt/java/jdk1.6.0_29/bin/*?/usr/local/bin/
#?something?likesudoupdate-alternatives--install?/usr/local/bin/java?java?/opt/java/jdk1.6.0_29/bin/?1?is?close?to?the?distro?way?of?registering?java
已安裝,跳過~
1.2)安裝Gecko
之后安裝火狐編譯的慣例需要的東西
sudo?apt-get?install?mercurial?ccache
sudo?apt-get?build-dep?firefox
問題1:
E: 無法獲得鎖 /var/lib/dpkg/lock - open (11: 資源暫時不可用)
E: 無法鎖定管理目錄(/var/lib/dpkg/),是否有其他進程正占用它?
原因:系統正在更新==,等待完成或取消吧...
第二個東西,會有個確認。網速較慢,還是要下一會的。
1.3)安裝Android NDK
下載并提取Android NDK。NDK版本4-7已測試可用。編譯人員當前用的是NDKr5c。
wget?http://dl.google.com/android/ndk/android-ndk-r5c-linux-x86.tar.bz2
tar?-xjf?android-ndk-r5c-linux-x86.tar.bz2
wget下載和tar解壓在了當前目錄。pwd:~/env。
1.4)安裝Android SDK
安裝最新版本的Android SDK。會比較久,可以去喝杯咖啡,什么什么的==。
wget?http://dl.google.com/android/android-sdk_r13-linux_x86.tgz
tar?-xzf?android-sdk_r13-linux_x86.tgz
./android-sdk-linux_x86/tools/android?updatesdk--no-ui
./android-sdk-linux_x86/tools/android?updateadb
已安裝,跳過~
最好配置下sdk tools的path,恩,是要加一下。
gedit?~/.bashrc
例如我的SDK在“~/env/android-sdk-linux”,則添加如下:
exportPATH=$PATH:$HOME/env/android-sdk-linux/platform-tools:$HOME/env/android-sdk-linux/tools
保存退出。
source?~/.bashrc
draw9patch
恩,打開OK!
1.5)增加鏈接速度(AKA using gold)
AKA,嘛玩意兒?
在一些系統上,鏈接libxul會花費幾分鐘。使用gold而不是Id能夠減少這些時間(在我機器上從大u邪惡7分鐘減少到1分鐘多;另一個機器,YMMV,從25秒減到10,刪除全部系統緩存后,從2分鐘到1分鐘)。
使用gold,你必須自己用binutils源碼編譯它。你可以運行如下的命令來編譯它。
sudo?apt-get?install?bison?flex?(orequivalentforyour?distribution)
mkdir?~/gold;?pushd?~/gold
wget?http://ftp.gnu.org/gnu/binutils/binutils-2.22.tar.bz2
tar?xfj?binutils-2.22.tar.bz2
mkdir?binutils-build;?pushd?binutils-build
../binutils-2.22/configure?--target=arm-linux-androideabi?--prefix=$HOME/gold/arm-linux-androideabi?--enable-gold?--disable-werror
make
make?install
popd
好吧,又可以一杯咖啡了~
將會創建一個$HOME/gold/arm-linux-androideabi/bin/arm-linux-androideabi-ld.gold二進制文件。通過運行--version來確認其正確并能運行:
cd?arm-linux-androideabi/bin/
./arm-linux-androideabi-ld.gold?--version
恩,很好,ok!
1.6)使用mozillas重打包的NDKs
注意:這部分在NDKr7上可能運行不正確,正在處理中,什么的。
都走到這一步,默默地繼續用官方的ndk吧~
1.7)設定Fennec的mozconfig
和通常一樣編譯(make -f client.mk),只是要用設定不同的mozconfig。
這里就會下載源碼了,之后需要修改mozconfig配置。
cd?~/env(先切換下目錄)
hg?clone?http://hg.mozilla.org/mozilla-central/?src
正在增加XXX,等了好久。不知道持續了多長時間,第二天過來,下好了==。
cd?src
gedit?mozconfig-droid(vi不熟的,路過~)
設定mozconfig配置:
#Addthe?correct?paths?here:
ac_add_options?--with-android-ndk="$HOME/env/android-ndk-r5c"
ac_add_options?--with-android-sdk="$HOME/env/android-sdk-linux/platforms/android-13"
ac_add_options?--with-android-version=5
#?android?options
ac_add_options?--enable-application=mobile/android
ac_add_options?--target=arm-linux-androideabi
ac_add_options?--with-ccache
ac_add_options?--enable-tests
mk_add_options?MOZ_OBJDIR=./objdir-droid
mk_add_options?MOZ_MAKE_FLAGS="-j9?-s"
設定環境變量:
export?MOZCONFIG=~/env/src/mozconfig-droid
這步的路徑都注意點,和官方相比,我路徑也都動過了。
2)編譯
cd?~/env/src
make?-f?client.mk?build_and_deploy
溜達去吧~
最后報了兩install錯誤。沒事,應該是沒連接手機,不能直接安裝的原因。
cd?objdir-droid/dist/
ls?fen*
恩,看到了“fennec-15.0a1.en-US.android-arm.apk”文件了(或者類似)。連接手機,安裝咯~
adb?install?-r?fennec*.apk
3)后記
命令我是一條條執行的,省得哪步出錯都不知道。不過貌似沒啥問題==
ps:Fennec支持Adobe Flash Player,不過需要注意以下特別說明:
Adobe Flash針對Android采用了分版本策略,Android 4.0和較低的系統版本分別使用不同的Adobe Flash,這次更新僅針對Android 4.0系統升至11.1.112.61,其他設備的Flash仍然保留在11.1.111.5(摘自:http://www.cr173.com/soft/16050.html)
apk下載地址:Cilck here!(51下載權限過低,一次放不了這么大個==)
總結
以上是生活随笔為你收集整理的android系统firefox,Android平台Firefox——Fennec编译手记的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 节后轻生折射老人“空巢”之痛
- 下一篇: Error could not open