android 編譯

每次遇到編譯android,是不是總有個冗繁的過程,感覺機器不給力不是,整理了一些。

加速ubuntu 虛擬機編譯android /linux 系統的方法

內核加速方法  
1.安裝ccache  
sudo apt-get install ccache  
2.添加緩存路徑  
vi ~/.bashrc 再最後面添加一行指定緩存路徑  
export CCACHE_DIR=/opt/ccache  
3.測試  
make clean 後再make zImage 一次就生效,一般會加速一倍時間。  
可以time make zImage -jx來測試,(x是響應的內核數)

表 . 產品版本定義文件中的變量及其說明

常量 說明
PRODUCT_NAME 最終用戶將看到的完整產品名,會出現在“關於手機”信息中。
PRODUCT_MODEL 產品的型號,這也是最終用戶將看到的。
PRODUCT_LOCALES 該產品支持的地區,以空格分格,例如:en_GB de_DE es_ES fr_CA。
PRODUCT_PACKAGES 該產品版本中包含的 APK 應用程序,以空格分格,例如:Calendar Contacts。
PRODUCT_DEVICE 該產品的工業設計的名稱。
PRODUCT_MANUFACTURER 製造商的名稱。
PRODUCT_BRAND 該產品專門定義的商標(如果有的話)。
PRODUCT_PROPERTY_OVERRIDES 對於商品屬性的定義。
PRODUCT_COPY_FILES 編譯該產品時需要拷貝的文件,以“源路徑 : 目標路徑”的形式。
PRODUCT_OTA_PUBLIC_KEYS 對於該產品的 OTA 公開 key 的列表。
PRODUCT_POLICY 產品使用的策略。
PRODUCT_PACKAGE_OVERLAYS 指出是否要使用默認的資源或添加產品特定定義來覆蓋。
PRODUCT_CONTRIBUTORS_FILE HTML 文件,其中包含項目的貢獻者。
PRODUCT_TAGS 該產品的標籤,以空格分格。

表 . 各種模塊的編譯方式的定義文件

文件名 說明
host_static_library.mk 定義瞭如何編譯主機上的靜態庫。
host_shared_library.mk 定義瞭如何編譯主機上的共享庫。
static_library.mk 定義瞭如何編譯設備上的靜態庫。
shared_library.mk 定義瞭如何編譯設備上的共享庫。
executable.mk 定義瞭如何編譯設備上的可執行文件。
host_executable.mk 定義瞭如何編譯主機上的可執行文件。
package.mk 定義瞭如何編譯 APK 文件。
prebuilt.mk 定義瞭如何處理一個已經編譯好的文件 ( 例如 Jar 包 )。
multi_prebuilt.mk 定義瞭如何處理一個或多個已編譯文件,該文件的實現依賴 prebuilt.mk。
host_prebuilt.mk 處理一個或多個主機上使用的已編譯文件,該文件的實現依賴 multi_prebuilt.mk。
java_library.mk 定義瞭如何編譯設備上的共享 Java 庫。
static_java_library.mk 定義瞭如何編譯設備上的靜態 Java 庫。
host_java_library.mk 定義瞭如何編譯主機上的共享 Java 庫。


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