chromium for android 源碼編譯

官方文檔

https://chromium.googlesource.com/chromium/src/+/master/docs/android_build_instructions.md

準備

Ubuntu (其他linux也可以,但是官方推薦ubuntu,Windows和mac是不行的)
梯子

下載depot_tools

depot_tools是Google提供的爲chromium進行代碼管理的一套工具,包括gclient,gn,gyp等一系列腳本工具等,在以後和源碼打交道時會一直使用到它。

首先是下載。
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git

下載後配置環境變量,在.bashrc或者.bash_profile或.zshrc等。
export PATH = [your_depot_tools dir]/bin:$PATH

下載chromium源碼

首先是創建一個目錄存放源碼,然後進入這個源碼。
mkdir chromium && cd chromium
fetch --nohooks android
如果您不想要完整的回購歷史記錄,可以通過將–no-history標誌添加到來節省大量時間fetch。
fetch --no-history android

這一過程可能需要較長時間.如果中途出了什麼問題,一定要進行以下步驟:
gclient sync
如果到這步沒有問題,那麼恭喜你,源代碼下載成功了。

./build/install-build-deps.sh
以及安裝第三方庫(src目錄下)

./build/install-build-deps-android.sh
如果還不行,請檢查網絡代理後再sync。~

中途可能會出現某個py文件執行錯誤或者exit ,請不要擔心,重新確認可以翻牆後再sync一次。

編譯源代碼

官方文檔解釋,已經放棄GYP了,現在推薦使用GN進行配置和build。

gn args out/Default
這裏的out/Default目錄就是以後編譯的apk的輸出的一層,apk會存放在apks中。

接着穩妥起見,可以再來一次sync.

gclient sync
接下來準備編譯環境:
. build/android/envsetup.sh
官方對編譯提供了3種編譯方案,分別是完整的瀏覽器,content shell(提供了瀏覽器基本功能的一個殼),webview。

編譯完整瀏覽器:
ninja -C out/Default chrome_public_apk
可以在out/Default/apks中看到相應的apk.
編譯contentshell:

ninja -C out/Release content_shell_apk
編譯webview:

ninja -C out/Release android_webview_apk
這幾步都可以得到對應的apk。

可以將手機連接到電腦,然後可以push過去安裝,或者直接install,當然也可以用官方文檔提供的方法直接使用depot_tool進行安裝。

好了,到這裏就完成了chromium的編譯,可以修改代碼進行提交了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章