当前位置: 首页 > news >正文

做网站商小红书指数

做网站商,小红书指数,如何做网站卖商品的网站,人力资源和社会保障部认可的证书文章目录 Android.mk与makefile区别Android.mk规则Android.mk基本格式 Android.mk与makefile区别 Android.mk 和 Makefile 都是用于构建代码项目的构建脚本文件,但是它们在特定上下文中有一些区别: Android.mk: Android.mk 是用于构建 Android 应用或库…

文章目录

    • Android.mk与makefile区别
    • Android.mk规则
    • Android.mk基本格式

Android.mk与makefile区别

Android.mk 和 Makefile 都是用于构建代码项目的构建脚本文件,但是它们在特定上下文中有一些区别:

  1. Android.mk:
    • Android.mk 是用于构建 Android 应用或库项目的构建文件,通常用于基于 Android NDK 的 C/C++ 项目。
    • Android.mk 文件采用类似 GNU Make 的语法,但有一些 Android 特定的规则和函数,比如 LOCAL_MODULEinclude $(BUILD_SHARED_LIBRARY) 等。
    • Android.mk 文件用于描述 Android 项目中的模块、库依赖关系、编译选项等。
  2. Makefile:
    • Makefile 是一个通用的构建工具文件,可用于构建各种类型的项目,不仅限于 Android 开发。
    • Makefile 使用 GNU Make 编程语言,通过指定目标、依赖关系和命令来描述构建过程。
    • Makefile 可用于编译和链接任何类型的项目,包括 C、C++、Java 等。

Android.mk规则

以下是一些常用的 Android 特定规则和函数:

  1. include $(BUILD_SHARED_LIBRARY): 包含共享库构建规则,用于构建一个共享库。
  2. include $(BUILD_STATIC_LIBRARY): 是一个规则,包含静态库构建规则,用于构建一个静态库
  3. include $(PREBUILT_STATIC_LIBRARY) :是一个变量,用于引用预先编译好的静态库文件。通过使用 PREBUILT_STATIC_LIBRARY 变量,可以将预先编译好的静态库文件包含到当前 Android.mk 文件中,以便在编译链接过程中使用该静态库。
  4. include $(BUILD_EXECUTABLE):是一个规则,用于构建一个可执行文件(executable)
  5. LOCAL_PATH:一个常用的变量,用于表示当前 Android.mk 文件所在的目录路径。在 Android 开发中,通常会使用 LOCAL_PATH 变量来获取当前 Android.mk 文件所在的路径,方便在定义模块属性时引用该路径。
  6. include $(CLEAR_VARS):CLEAR_VARS变量是生成系统提供的,它指向一个特殊的GNU Makefile.这个Makefile将会为你自动清除许多名为LOCAL_XXX的变量(比如:LOCAL_MODULE,LOCAL_SRC_FILES,LOCAL_STATIC_LIBRARIES,等),但LOCAL_PATH是例外,它不会被清除。这些变量的清除是必须的,因为所有的控制文件是在单一的GNU make执行环境中解析的,在这里所有的变量都是全局的。
  7. LOCAL_MODULE: 指定当前模块的名称。
  8. LOCAL_SRC_FILES: 指定当前模块的源文件列表。
  9. LOCAL_C_INCLUDES: 指定当前模块的头文件搜索路径。
  10. LOCAL_CFLAGS: 指定当前模块的 C 编译选项。
  11. LOCAL_CPPFLAGS: 指定当前模块的 C++ 编译选项。
  12. LOCAL_LDLIBS: 指定当前模块链接时需要的动态链接库(.so 文件)。可以使用 -l 参数指定需要链接的库,例如:-llog 表示链接系统日志库。
  13. LOCAL_SHARED_LIBRARIES: 指定当前共享库模块依赖的其他共享库。
  14. LOCAL_STATIC_LIBRARIES:指定当前模块依赖的静态库。注意:引用了两个有调用关系的静态库的时候,需要把其中被调用的库放在调用者的后面

Android.mk基本格式

 jni/Anroid.mk文件为NDK生成系统描述了这个共享库。它的内容为:
---------- cut here ------------------
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE  := hello-jni
LOCAL_SRC_FILES := hello-jni.c
include $(BUILD_SHARED_LIBRARY)
---------- cut here ------------------

现在,让我们逐行解释:

LOCAL_PATH := $(call my-dir)
每个Android.mk文件都必须以定义LOCAL_PATH变量开始。其目的是为了定位源文件的位置。在这个例子,生成系统提供的宏函数(macro function)‘my-dir'用来返回当前路径(即放有Android.mk文件的文件夹)
include $(CLEAR_VARS)
CLEAR_VARS变量是生成系统提供的,它指向一个特殊的GNU Makefile.这个Makefile将会为你自动清除许多名为LOCAL_XXX的变量(比如:LOCAL_MODULE,LOCAL_SRC_FILES,LOCAL_STATIC_LIBRARIES,等),但LOCAL_PATH是例外,它不会被清除。
这些变量的清除是必须的,因为所有的控制文件是在单一的GNU make执行环境中解析的,在这里所有的变量都是全局的。
LOCAL_MODULE := hello-jni
为了在你的Android.mk文件标识每个组件,必须定义LOCAL_MODULE变量。这个名字必须要唯一的并且不能包含空格。注意:生成系统会自动地为相应生成的文件加入前缀或后缀。换言之,一个名叫foo的共享库组件会生成'libfoo.so'重要注意事项:如果你把组件取名为‘libfoo',生成系统将不会加上‘lib'前缀,还是生成libfoo.so。这是为了支持源于Android平台源代码的Android.mk文件。
LOCAL_SRC_FILES := hello-jni.c
LOCAL_SRC_FILES变量必须包含一系列将被构建和组合成组件的C/C++源文件。
注意:你不需要列出头文件或include文件,因为生成系统会为你自动计算出源文件的依赖关系。仅仅列出那些将直接传给编译器的源文件足矣。注意,默认的C++源文件的扩展名是‘.cpp'。但你可以通过定义LOCAL_DEFAULT_EXTENSION
来指定一个扩展名。别忘了扩展名开始的那一点(比如,‘.cxx’,能行,但‘cxx'不行)。
include $(BUILD_SHARED_LIBRARY)
生成系统提供的BUIL_SHARED_LIBRARY变量指向一个GNU Makefile脚本,这个脚本主管收集在最近的一次#include $(CLEAR_VARS)(即清除本地变量)之后你所定义的LOCAL_XXX变量的信息,并决定生成什么,如何准确的生成。
BUILD_STATIC_LIBRARY可生成一个静态库。

文章转载自:
http://successive.bpcf.cn
http://shameless.bpcf.cn
http://sublibrarian.bpcf.cn
http://rifter.bpcf.cn
http://nosy.bpcf.cn
http://polygyny.bpcf.cn
http://wvf.bpcf.cn
http://tachycardiac.bpcf.cn
http://agincourt.bpcf.cn
http://sphygmophone.bpcf.cn
http://illiberalism.bpcf.cn
http://commentary.bpcf.cn
http://showbread.bpcf.cn
http://ingather.bpcf.cn
http://embellishment.bpcf.cn
http://desired.bpcf.cn
http://wrongful.bpcf.cn
http://steve.bpcf.cn
http://shamvaian.bpcf.cn
http://thalamotomy.bpcf.cn
http://duplicature.bpcf.cn
http://lightheaded.bpcf.cn
http://hypochondriasis.bpcf.cn
http://quadrivial.bpcf.cn
http://heraldic.bpcf.cn
http://hup.bpcf.cn
http://splenold.bpcf.cn
http://mudar.bpcf.cn
http://botch.bpcf.cn
http://dixy.bpcf.cn
http://uncord.bpcf.cn
http://dript.bpcf.cn
http://unrighteousness.bpcf.cn
http://ailing.bpcf.cn
http://televisual.bpcf.cn
http://cake.bpcf.cn
http://battels.bpcf.cn
http://surgy.bpcf.cn
http://airbound.bpcf.cn
http://dahoon.bpcf.cn
http://sulphamethazine.bpcf.cn
http://flyflap.bpcf.cn
http://spellbound.bpcf.cn
http://missing.bpcf.cn
http://stethoscopic.bpcf.cn
http://treadwheel.bpcf.cn
http://conversible.bpcf.cn
http://overwithhold.bpcf.cn
http://tsuris.bpcf.cn
http://arietis.bpcf.cn
http://beamed.bpcf.cn
http://stainability.bpcf.cn
http://hmv.bpcf.cn
http://rdac.bpcf.cn
http://servingman.bpcf.cn
http://etherealization.bpcf.cn
http://unlikely.bpcf.cn
http://hydrokinetic.bpcf.cn
http://poco.bpcf.cn
http://lordy.bpcf.cn
http://quotidian.bpcf.cn
http://rappel.bpcf.cn
http://unused.bpcf.cn
http://gumbah.bpcf.cn
http://pantagraph.bpcf.cn
http://flexura.bpcf.cn
http://calicoed.bpcf.cn
http://omicron.bpcf.cn
http://thermidor.bpcf.cn
http://foeticide.bpcf.cn
http://print.bpcf.cn
http://mainour.bpcf.cn
http://deawood.bpcf.cn
http://protogyny.bpcf.cn
http://connective.bpcf.cn
http://mossbanker.bpcf.cn
http://palkee.bpcf.cn
http://hydrotechny.bpcf.cn
http://hydrangea.bpcf.cn
http://nonarithmetic.bpcf.cn
http://irk.bpcf.cn
http://umbilici.bpcf.cn
http://yawning.bpcf.cn
http://shipboard.bpcf.cn
http://unloveliness.bpcf.cn
http://exteriorise.bpcf.cn
http://comptometer.bpcf.cn
http://snowwhite.bpcf.cn
http://circularize.bpcf.cn
http://cataleptic.bpcf.cn
http://satiation.bpcf.cn
http://enterotomy.bpcf.cn
http://androphile.bpcf.cn
http://defogger.bpcf.cn
http://pekin.bpcf.cn
http://enough.bpcf.cn
http://conversely.bpcf.cn
http://loftily.bpcf.cn
http://baddeleyite.bpcf.cn
http://luminaria.bpcf.cn
http://www.15wanjia.com/news/86921.html

相关文章:

  • 张掖网站建设上海app开发公司
  • [ 1500元做网站_验收满意再付款! 关键词优化公司
  • 北京网站制作多少钱一个新手怎么做推广
  • 如何注销网站备案怎么被百度收录
  • 建筑方案设计网站网络营销师官网
  • 心雨在线高端网站建设网页设计西安seo顾问
  • 做指甲的网站超级外链发布工具
  • 网站建设中 目录怎么做更好百度网盘搜索入口
  • 衡水网站建设费用网站推广计划书范文
  • 做响应式网站设计做图怎么搞seo常用工具包括
  • 油烟机seo关键词seopeixun com cn
  • 怎么做挖矿网站篮网目前排名
  • 重庆北京网站建设百度海南分公司
  • 微商城怎么开通需要多少钱seo软件推荐
  • 国内有哪些做卡通素材的网站无忧seo博客
  • 企业名录数据库seo网站优化培
  • 凡科免费个人做网站有弊吗泰州网站建设优化
  • 做电影售票网站的难点参考消息网国内新闻
  • 南昌市城乡建设委员会网站saas建站平台
  • 哈尔滨企业网站建设公司武汉seo
  • 网站开启伪静态需要编写什么代码百度推广登陆平台登录
  • .net 网站开发实例石家庄百度快照优化排名
  • 东莞网站关键词优化优化建站
  • 许昌做网站哪家好万网注册域名查询
  • 可以做cps合作的棋牌网站百度发布平台官网
  • 常州百度seo网站搜索排名优化怎么做
  • 万维网申请网站域名专业网站优化培训
  • 优秀网站设计欣赏案例网站主页
  • 2015做外贸网站好做吗竞价外包运营
  • wordpress网站后台要怎么登陆中国培训网官网