Android編譯順序小結

2021-06-16 03:57:04 字數 1755 閱讀 1111

android編譯:

1、build.sh指令碼:

該指令碼根據傳進來的引數選擇編譯的專案:

例如./build.sh *** systemimage

因為$1=p729b_cn則會進入if語句中。

if [ "$1" = "***" ] ]; then

source ./$1/customize.sh//執行定製目錄拷貝指令碼

./build_blade.sh update-api//生成current.xml檔案,更新api。

./build_blade.sh $2 //根據傳進來的第二個引數systemimage來編譯版本。既:./build_mooncake.sh systemimage

fi2、build_***.sh指令碼

通過上面我們可以看到,版本的編譯進入了./build_***.sh systemimage命令的執行。在這個指令碼中:

source build/envsetup.sh > /dev/null  ///設定環境變數

choosecombo device relea***xxeng //選擇裝置

make -j4  $1  //進行編譯。這裡相當於make -j4 systemimage 當然這裡的-j4根據自己的機器配置來選擇編譯的級別。

其中source build/envsetup.sh > /dev/null 設定環境變數,也是作為mm的乙個解析器;

choosecombo device release *** eng  這條中的choosecombo是google自帶的乙個函式,實際上在這裡他呼叫的其他幾個檔案:

choosesim $1       選擇目標裝置

choosetype $2      選擇目標**格式

chooseproduct $3   選擇產品平台(mooncake)

choosevariant $4   選擇版本的模式

set_stuff_for_environment  通過build/core/config.mk進行配置

printconfig        列印出我們剛才選擇的資訊

我們執行這條命令的時候,會直接列印出

****************************************====

platform_version_codename=rel

platform_version=2.1-update1

target_product=***

target_build_variant=user

target_simulator=false

target_build_type=release

target_arch=arm

host_arch=x86

host_os=linux

host_build_type=release

build_id=ere27

****************************************====

而我們沒有選擇的餘地,如果想自己diy版本,則可以直接執行choosecombo可以進行手動選擇。

而我們在單獨執行choosesim $1 ,在下面的函式中,我們看到,每次執行一次choosesim $1便會做一次set_stuff_for_environment

case `uname -s` in

linux)

function choosesim()

;;*)

choosecombo device release mooncake裝置

android 編譯小結,模擬器打包

just a note personal 最近在系統掛鉤子,除錯程式 開了100g 的快取,表示毫無壓力,編譯完了之後在 mydroid out target product generic 生成img 直接執行 emulator ok,沒問題,但是我想把這些拿出來執行,不參與模擬器的東西。把 ge...

FlightGear編譯小結

養成寫blog的習慣,把平時遇到的一些有價值的事情記錄下來,這並不是每個人都能做到的。由於推免沒能推到自己第一想要的方向,退而求其次,我就來到嵌入式方向,並且畢業設計也在這邊的實驗室做,安排的任務跟計算機圖形有關係,更具體一點跟飛行模擬器 flight simulator 有關係,這樣就接觸了fli...

條件編譯小結

源文 編碼的時候經常要用到條件編譯,每次都到網上去查比較浪費時間,今天總結一下以備後用 visual c ifdef msc ver 非vc編譯器很多地方也有定義 borland c ifdef borlandc unix windows windows 95 98 me的ver win32 win...