Makefile & Android.mk檔案
列印輸出:$(warning xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx)或者$(error xxxxx)
列印輸出變數的值:$(warning $(LOCAL_SHARED_LIBRARIES))
2.
LOCAL_CFLAGS += -DAOA_DEBUG
表示執行.cpp檔案中定義AOA_DEBUG內的輸出,如:
#ifdef AOA_DEBUG
printf("hello word");
#endif
則會執行printf語句.
3.
LOCAL_MODULE_TAGS := optional/eng/user/tests
user: 指該模組只在user版本下才編譯
eng: 指該模組只在eng版本下才編譯
tests: 指該模組只在tests版本下才編譯
optional:指該模組在所有版本下都編譯
4.
LOCAL_SRC_FILES :=$(shell cd $(LOCAL_PATH); find . -iname '*.cpp' -o -iname '*.c')
編譯LOCAL_PATH下的所有.cpp和.c檔案,當然也可以一個一個的列出來,我通常用後者
5.
LOCAL_C_INCLUDES := $(LOCAL_PATH) \
包含路徑
6.
LOCAL_SHARED_LIBRARIES := libcore
包含動態庫
7.
LOCAL_STATIC_LIBRARIES := libcore
包含靜態庫
LOCAL_LDFLAGS := -lpthread -lrt
include $(BUILD_EXECUTABLE)
include $(BUILD_SHARED_LIBRARY)
include $(BUILD_STATIC_LIBRARY)
分別為編譯bin檔案,動態庫,靜態庫
抄的別人的:
LOCAL_PATH := $(call my-dir)
每個Android.mk檔案必須以定義LOCAL_PATH為開始。它用於在開發tree中查詢原始檔。
巨集my-dir 則由Build System提供。返回包含Android.mk的目錄路徑。
include $(CLEAR_VARS)
CLEAR_VARS 變數由Build System提供。並指向一個指定的GNU Makefile,由它負責清理很多LOCAL_xxx.
例如:LOCAL_MODULE, LOCAL_SRC_FILES, LOCAL_STATIC_LIBRARIES等等。但不清理LOCAL_PATH.
這個清理動作是必須的,因為所有的編譯控制檔案由同一個GNU Make解析和執行,其變數是全域性的。所以清理後才能避免相互影響。
LOCAL_MODULE := hello-jni
LOCAL_MODULE模組必須定義,以表示Android.mk中的每一個模組。名字必須唯一且不包含空格。
Build System會自動新增適當的字首和字尾。例如,foo,要產生動態庫,則生成libfoo.so. 但請注意:如果模組名被定為:libfoo.則生成libfoo.so. 不再加字首。
這裡注意,有時候會造成錯誤,參看該部落格中的另一篇關於mk的記錄:
在某個目錄下的所有子目錄中查詢Android.mk,不包括當前目錄
$(1):要搜尋的目錄
相關推薦
Makefile & Android.mk檔案
1. 列印輸出:$(warning xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx)或者$(error xxxxx) 列印輸出變數的值:$(warning $(LOCAL_SHARED_LIBRARIES)) 2. LOCAL_CFLAGS
編寫Android.mk檔案備錄
前言: 由於目前供職於機器人公司,從事基於android系統的軟體開發,因此常常需要進行原始碼編譯(當然也可以基於機器人的sdk和android studio環境進行開發)。 進行原始碼編譯,少不了編寫Android.mk檔案。通常類比前人的Android.mk檔案修修改
android makefile android mk 分析 1
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!  
Android Studio使用自定義的Android.mk檔案編譯ffmpegyuv-bgr
概述 最近做專案的時候,領導安排一個任務,讓測試一下,用ffmpeg中的yuv轉bgr函式的速度。之前編譯so庫大部分都是用eclipse,本次博主花了兩天時間,在Android studio上編譯並執行,在此做一下記錄。 設定Android Studio ndk 1、開啟setings
Android.mk檔案語法詳解
原文地址為:Android.mk 檔案語法詳解 轉:http://blog.sina.com.cn/s/blog_602f8770010148ce.html ===============================================================
LOCAL_MODULE_TAGS--------在Android.mk檔案裡的配置項------------
ZZZZ: http://blog.csdn.net/talking12391239/article/details/10904653 要了解Android編譯選項eng、user和userdebug的區別,需先了解下LOCAL_MODULE_TAGS這一Android.m
Android.mk 檔案語法詳解
===================================================================================== 0. Android.mk簡介: Android.mk檔案用來告知NDK Build 系統關於Sou
Android.mk檔案語法規範及使用
1.概述Android.mk編譯檔案是用來向Android NDK描述你的C,C++原始碼檔案的。具體來說:該檔案是GNU Makefile的一小部分,會被編譯系統解析一次或更多次的build系統。因此,您應儘量減少您宣告的變數,不要認為某些變數在解析過程中不會被定義。這
安卓Android.mk 檔案語法詳解
0. Android.mk簡介: Android.mk檔案用來告知NDK Build 系統關於Source的資訊。 Android.mk將是GNU Makefile的一部分,且將被Build System解析一次或多次。 所以,請儘量少的在Android.mk中宣告
NDK 編譯和使用靜態庫、動態庫; Android.mk 檔案語法詳解; Android.mk高階寫法
===================================================================================== 0. Android.mk簡介: Android.mk檔案用來告知NDK Build 系統關於Source的資訊。 Andro
Android.mk檔案語法規範——深入瞭解android平臺的jni
Android.mk是Android提供的一種makefile檔案,用來指定諸如編譯生成so庫名、引用的標頭檔案目錄、需要編譯的.c/.cpp檔案和.a靜態庫檔案等。要掌握jni,就必須熟練掌握Android.mk的語法規範。 一、Android.mk檔案的用途一個andr
android.mk檔案語法總結
LOCAL_PATH := $(call my-dir)//指定本地路徑,通常是android.mk檔案所在路徑 include $(CLEAR_VARS)//這兩行必須要 LOCAL_MODULE := OgreGLES2Sample//指定模組名,
Android.mk入門到精通(001)——Android.mk 檔案語法詳解:神文
https://www.cnblogs.com/wainiwann/p/3837936.html 0. Android.mk簡介: Android.mk檔案用來告知NDK Build 系統關於Source的資訊。 Android.mk將是GNU Makefile的一部分,
Android.mk檔案語法詳述
介紹:------------這篇文件是用來描述你的C或C++原始檔中Android.mk編譯檔案的語法的,為了理解她們我們需要您先看完docs/OVERVIEW.html(http://hualang.iteye.com/blog/1135105)檔案來了解它的作用概覽:
Android5.1 內建第三方APK及Android.mk檔案編寫(以在amlogic5.1公版系統內建百度輸入法為例)
Android.mk檔案用來向編譯系統描述如何編譯你的原始碼。在編譯整個工程的情況下,系統所找到的所有的Android.mk將會先存入subdir_makefiles變數中,隨後一次性一次性include進整個編譯檔案中。 示例 Android.mk內容:
Android.mk 檔案語法大全
講解如下:LOCAL_PATH := $(call my-dir) 每個Android.mk檔案必須以定義LOCAL_PATH為開始。它用於在開發tree中查詢原始檔。巨集my-dir 則由Build System提供。返回包含Android.mk的目錄路徑。include $(CLEAR_VARS)CLE
專案中在Android.mk檔案中根據專案名稱選擇不同的AndroidManifest.xml檔案 && 如何使用系統設定的日期顯示格式
專案中根據專案名稱選擇不同的AndroidManifest.xml檔案 MY_PROJECT_NAME := $(subst full_,,$(TARGET_PRODUCT)) ifeq ($(strip $(MY_PROJECT_NAME)), xxxxxx)# xxxx
ndk開發中的Android.mk檔案與Application.mk詳解及例項
Android.mk檔案的作用: An Android.mk file is written to describe your sources to the build system. 中文意思是:寫一個Android.mk檔案是為了向生成系統描述你的原始碼。
android的 makefile -- Android.mk 分析
首先我們來看看android裡makefile的寫法 (1)Android.mk檔案首先需要指定LOCAL_PATH變數,用於查詢原始檔,巨集函式’my-dir’, 由編譯系統提供。由於一般情況下Android.mk和需要編譯的原始檔在同一目錄下,所以定義成如下形式:LOCAL_PATH:=$(call my
android Makefile(Android.mk)解析
LOCAL_CFLAGS 在6.0/android/hardware/broadcom/libbt