zoukankan      html  css  js  c++  java
  • Android.mk 解析

     1 #源文件路径,call my-dir调用my-dir宏,返回Android.mk的路径
     2 LOCAL_PATH := $(call my-dir)
     3 
     4 #生成so
     5 include $(CLEAR_VARS)
     6 LOCAL_MODULE    := First
     7 LOCAL_SRC_FILES := firstjni.cpp
     8 include $(BUILD_SHARED_LIBRARY)
     9 
    10 #使用第三方so
    11 include $(CLEAR_VARS)
    12 LOCAL_SRC_FILES := prebuilt/libBaiduMapSDK_v3_2_0_15.so
    13 LOCAL_MODULE    := BaiduMapSDK_v3_2_0_15
    14 include $(PREBUILT_SHARED_LIBRARY)
    15 
    16 #生成可执行文件
    17 #CLEAR_VARS让编译系统清除掉一些已经定义过的宏,这些宏的定义是全局的,
    18 #当一个GNU MAKE在编译多个模块时,必须清除并重新摄者它们。
    19 include $(CLEAR_VARS)
    20 #LOCAL_ARM_MODE指定生成的原生程序所使用的ARM指令模式。
    21 #arm表示使用32位的arm指令系统。
    22 LOCAL_ARM_MODE  := arm
    23 #LOCAL_MODULE指定模块的名称,即原生程序生成后的文件名。
    24 #这里最终将生成名为hello的文件,如果是共享库,将生成libhello.so
    25 LOCAL_MODULE    := hello
    26 #指定C或C++源文件列表
    27 LOCAL_SRC_FILES := hello.c
    28 #指定生成的文件类型。
    29 #BUILD_EXECUTABLE表示生成可执行文件,
    30 #BUILD_SHARED表示生成动态库,
    31 #BUILD_LIBRARY表示生成静态库
    32 include $(BUILD_EXECUTABLE)

    注:若使用第三方so文件,第三方so应该放在Android.mk文件所在目录的prebuilt子目录下

    附:快速拷贝版

    LOCAL_PATH := $(call my-dir)
    
    include $(CLEAR_VARS)
    LOCAL_MODULE    := First
    LOCAL_SRC_FILES := firstjni.cpp
    include $(BUILD_SHARED_LIBRARY)
    
    include $(CLEAR_VARS)
    LOCAL_SRC_FILES := prebuilt/libBaiduMapSDK_v3_2_0_15.so
    LOCAL_MODULE    := BaiduMapSDK_v3_2_0_15
    include $(PREBUILT_SHARED_LIBRARY)
    
    include $(CLEAR_VARS)
    LOCAL_ARM_MODE  := arm
    LOCAL_MODULE    := hello
    LOCAL_SRC_FILES := hello.c
    include $(BUILD_EXECUTABLE)
  • 相关阅读:
    TensorFlow 简单实例
    $nextTick 宏任务 微任务 macrotasks microtasks
    FIS3 构建 工程化
    axios 请求参数配置说明
    js 垃圾回收机制与内存管理
    Async Await
    webpack 生命周期
    高阶函数 实现sum(2)(3) 柯里化
    JavaScript和JQuery的区别
    Javascript --常用技巧
  • 原文地址:https://www.cnblogs.com/luzhiyuan/p/4393766.html
Copyright © 2011-2022 走看看