1. 程式人生 > >android mk基本常用命令解釋

android mk基本常用命令解釋

LOCAL_PATH:= $(call my-dir)
# PRODUCT_COPY_FILES += \
# $(LOCAL_PATH)/bitbp49k-35k-14.xml:/etc/bitbp49k-35k-14.xml
$(shell cp -rf $(LOCAL_PATH)/bitbp49k-35k-14.xml $(TARGET_OUT)/etc/bitbp49k-35k-14.xml)            //拷貝檔案到指定目錄


include $(CLEAR_VARS)


LOCAL_MODULE := libopencv_core                   //指定編譯的庫名
LOCAL_MODULE_TAGS := optional


LOCAL_C_INCLUDES := \                                       //包含需要的標頭檔案
$(LOCAL_PATH)/core/include\
$(LOCAL_PATH)/../zlib \
$(LOCAL_PATH)/../../bionic/libc/include


LOCAL_CFLAGS := $(LOCAL_C_INCLUDES:%=-I%)   //定義全域性巨集


LOCAL_CPPFLAGS := -fexceptions 
LOCAL_CPPFLAGS += -DOPENCV_CAN_BREAK_BINARY_COMPATIBILITY  //


LOCAL_LDLIBS := -L$(SYSROOT)/usr/lib -ldl    //使用自定義LOG列印時需要


LOCAL_LDFLAGS := $(LOCAL_PATH)/../../ndk/sources/cxx-stl/gabi++/libs/mips/libgabi++_shared.so   //應該是包含其他路徑的庫


LOCAL_SHARED_LIBRARIES += libstlport\    //包含需要的動態庫   (system/lib  下)
libz\
        libcutils \
        libdl \

libc 

include external/stlport/libstlport.mk      //包含mk檔案


LOCAL_SRC_FILES := \                            //指定要編譯為庫的包含檔案
core/src/algorithm.cpp 

include $(BUILD_SHARED_LIBRARY)  //編譯為動態庫