• 安卓之Android.mk编写


    题记:编译环境可以参考https://www.cnblogs.com/ywjfx/p/9960817.html

    不管是写C还是java,我想所有的程序员都经历过HelloWorld程序的编写,现在让我们开始安卓的framework层的HelloWorld之旅。

    有了编译环境,只需要两个步骤就可以完成,步骤如下:

      1、在external下面创建test目录

          mkdir android/external/test

      2、在test目录下创建两个文件Android.mk、test.c

          #Android.mk文件
          LOCAL_PATH:= $(call my-dir) #定义当前模块的相对路径       include $(CLEAR_VARS)      #清空当前环境变量       LOCAL_MODULE:= test      #编译生成的目标名称       LOCAL_SRC_FILES := test.c    #编译该模块所需要的源文件 注:编译多个源文件LOCAL_SRC_FILES := test.c \ test1.c
         # LOCAL_MODULE_PATH:=$(LOCAL_PATH) #在当前目录生成该模块文件
          include $(BUILD_EXECUTABLE)   #编译之后的文件类型
          //test.c文件
          #include <stdio.h>         main() {              printf("hello world\n");         }

      3、编译环境

        . build/envsetup.sh   
          lunch  
         22  #选择自己的平台,个人是22

      4、编译文件

        mmm external/test  #使用mmm或者mm去编译test目录下的所有文件

      

    不出意外的话,你可以看到下面的语句,说明你编译成功了。

        Starting build with ninja
        ninja: Entering directory `.'
        [ 37% 3/8] target  C: test <= external/test/test.c
        external/test/test.c:2:1: warning: type specifier missing, defaults to 'int' [-Wimplicit-int]
        main() {
        ^
        1 warning generated.
        [100% 8/8] Install: out/target/product/tulip-p1/system/bin/test
        make: Leaving directory `/home/yangwj/software/cqa64_android_v7.1/android'
    
        #### make completed successfully (04:27 (mm:ss)) ####

    ###共勉###

  • 相关阅读:
    Enumerable.Distinct方法去重
    datatable使用lambda
    jQuery获取单选框(复选框)选中的状态
    从 datetime2 数据类型到 datetime 数据类型的转换产生一个超出范围的值
    SQL Server 中WITH (NOLOCK)浅析
    C#将int型数字转换成3位字符串,不足的时候,前面补0
    window.locatin.href 中特殊字符串问题
    windows下git bash不显示中文问题解决
    python获取文件行数
    自定义异常以及触发异常
  • 原文地址:https://www.cnblogs.com/ywjfx/p/9998318.html
Copyright © 2020-2023  润新知