Android系統編譯指令make 、mmm、mm優缺點比較
Android 系統提供了三種指令用於編譯,他們分別為make、mmm、mm,這三個指令編譯的優缺點如下:
1. make:不帶任何引數,用於編譯整個系統,編譯時間比較長,除非是進行初次編譯否則不建議此種做法;
例如:make MediaProvider z這種模式對應於單個模組的編譯。它的優點是:會把該模組依賴的其他模組一起跟著編譯。例如:make libmedia 就會把libmedia依賴庫全部編譯好。當然缺點也會很明顯,那就是它會搜尋整個原始碼來定位MediaProvider 模組所使用的Android.mk檔案。並且還要判斷該模組依賴的其他模組是否有修改。所以編譯時間比較長。
2. mmm pacKages/providers/MediaProvider:該命令編譯指定目錄下的目標模組,而不編譯它所依賴其他模組。所以,若是初次編譯,採用此種模式編譯一個模組往往會報錯,錯誤的原因就在於它依賴的其他模組沒有一起編譯。
3. mm 這種編譯方式一般需要cd 進入pacKages/providers/MediaProvider目錄,然後執行mm指令。該命令會編譯當前目錄下的模組。它和mmm一樣,只編譯目標模組。mm和mmm編譯的速度都很快。
從使用者的角度來考慮:
1. 如果只知道目標模組的名稱,則建議使用 make 模組名 的方式編譯目標模組。例如:如果要編譯 libmedia 。則直接使用make libmedia即可,另外,初次編譯時也要採用這種方法。
2. 如果不知道目標模組的名稱,但知道目標模組所在的目錄時,則可使用mm或者mmm 命令來編譯。當然初次編譯還必須使用make命令,以後編譯就可以使用mmm或者mm了,這樣會幫助我們節約不少時間。
注意:一般的編譯方式都會採用增量編譯,即只編譯發生變化的目標檔案,但有時則需要重新編譯所有目標檔案,那麼就可以使用make 命令列的-B選項。例如:mm -B 模組名,或者mm -B、mmm -B。在mm 和 mmm內部也是呼叫make命令的,而make的-B選項將強制編譯所有的目標檔案。
相關文章
- Apache與Nginx的優缺點比較ApacheNginx
- SQL、NoSQL和NewSQL的優缺點比較SQL
- Apache與Nginx的優缺點、效能比較,到底選擇哪個比較好?ApacheNginx
- kookeey、Luminati 和 Smartproxy 海外代理的特點和優缺點分析比較
- 也談SAP系統優缺點
- ERP系統有哪些優點和缺點?
- caffe make 編譯編譯
- Android 編譯優化Android編譯優化
- 開源系統監控工具Nagios、Zabbix和Open-Falcon的功能特性彙總及優缺點比較iOS
- MySQL二進位制日誌的三種格式優缺點比較MySql
- 主流的CRM系統盤點比較
- 與其他系統相比,Linux系統有什麼優點和缺點?Linux
- 各大程式語言優缺點對比
- Make編譯之編譯32bit ffmpeg編譯
- 服裝ERP系統的優勢與缺點
- Linux系統和Windows系統的各自的優缺點有哪些LinuxWindows
- CRM系統本地部署和雲部署的優缺點
- 檔案系統與資料庫的優缺點資料庫
- JavaScript 各種繼承方式優缺點對比JavaScript繼承
- CRM客戶關係管理系統有哪些優缺點?
- w10系統好用嗎_w10系統優缺點詳解
- Hive 優缺點Hive
- MapReduce優缺點
- RabbitMQ優缺點MQ
- 比較無語的系統
- 什麼是分散式系統!以及分散式系統架構的優缺點!分散式架構
- 部署型CRM系統和託管型CRM系統的優缺點有哪些
- CRM系統雲部署和本地部署的優缺點有哪些
- 採用電子招投標系統的優缺點分析
- 作業系統微核心和Dubbo微核心各自優缺點!作業系統
- memcached 和 redis 使用場景及優缺點對比Redis
- 五大 JAVA Web 框架的優缺點對比JavaWeb框架
- HTTPS 優點與缺點HTTP
- 編譯系統概要編譯
- MMM合約互助模式系統開發|MMM原始碼模式原始碼
- 如何在Windows下使用make編譯MakefileWindows編譯
- Docker的優缺點Docker
- Linux系統中Shell指令碼編寫的一點心得Linux指令碼