當(dāng)前位置:首頁(yè) > 嵌入式培訓(xùn) > 嵌入式學(xué)習(xí) > 講師博文 > Android系統(tǒng)開(kāi)發(fā)中Android.mk的多種寫(xiě)法
Android系統(tǒng)開(kāi)發(fā)中Android.mk的多種寫(xiě)法
時(shí)間:2018-09-27 來(lái)源:未知
Android.mk在android的系統(tǒng)開(kāi)發(fā)中毫無(wú)疑問(wèn)是很重要的,它的作用比較強(qiáng)大,可以將c/c++代碼編譯成可執(zhí)行程序,動(dòng)態(tài)庫(kù),靜態(tài)庫(kù),當(dāng)然也可以將Java代碼編譯成二進(jìn)制代碼,jar包,apk等等,一下就列舉幾個(gè)例子來(lái)說(shuō)明是如何使用的:
1,編寫(xiě)方法: 抄模板,個(gè)人不建議默寫(xiě),android源碼中的模板遍地都是,所以不用擔(dān)心不會(huì)寫(xiě)
2,Android.mk的寫(xiě)法實(shí)際是基于Makefile的,所以基本的規(guī)則還是不能有悖于Makfile,Makefile的一個(gè)規(guī)則是:
目標(biāo) :依賴(lài)
編譯規(guī)則 #注意規(guī)則前面有一個(gè)tab
3,簡(jiǎn)單的模板:hardware/ril/rild/Android.mk
#獲取Androd.mk所在路徑
LOCAL_PATH:= $(call my-dir)
#清空以L(fǎng)OCAL_xxx的變量, 除了LOCAL_PATH
include $(CLEAR_VARS)
#指定源文件
LOCAL_SRC_FILES:= \
rild.c
#指定目標(biāo)文件
LOCAL_MODULE:= rild
#編譯規(guī)則
include $(BUILD_EXECUTABLE)
-------------------------------------------------------------------
c/c++代碼編譯成elf可執(zhí)行程序:
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES:= \
hello.c
# optional表示在任何模式下都會(huì)編譯
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE:= hello_elf
include $(BUILD_EXECUTABLE)
-----------------------------------------------------------------
編譯成動(dòng)態(tài)庫(kù)
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES:= myled_jni.cpp
LOCAL_SHARED_LIBRARIES := \
libutils
LOCAL_MODULE:=libled_jni
include $(BUILD_SHARED_LIBRARY)
-----------------------------------------------------------------------------------------------------------------------------------
預(yù)編譯: 表示拷貝
prebuilt/android-arm/gdbserver$ vim Android.mk
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES := ADV7123.pdf
LOCAL_MODULE := ADV7123.pdf
#指定目標(biāo)文件安裝路徑
LOCAL_MODULE_PATH := $(TARGET_OUT_ETC)
LOCAL_MODULE_CLASS := ETC
LOCAL_MODULE_TAGS := optional
#預(yù)編譯方式
include $(BUILD_PREBUILT)
華清遠(yuǎn)見(jiàn)90+項(xiàng)目獲批!教育部2021最新協(xié)同育人項(xiàng)目名
華清遠(yuǎn)見(jiàn)榮獲2021騰訊教育“年度口碑影響力職業(yè)教育品
華清遠(yuǎn)見(jiàn)受邀參加2021年武漢民辦高校信息學(xué)科合作聯(lián)盟
溫暖同行共創(chuàng)佳績(jī) 2019華清遠(yuǎn)見(jiàn)北京總部年會(huì)大曝光
助力高校AI人工智能學(xué)科建設(shè) 華清遠(yuǎn)見(jiàn)人工智能師資班
華清遠(yuǎn)見(jiàn)受邀參加四川省物聯(lián)網(wǎng)年會(huì),榮獲優(yōu)秀企業(yè)專(zhuān)家