博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
android 如何加入第一3正方形lib图书馆kernel于
阅读量:4696 次
发布时间:2019-06-09

本文共 1283 字,大约阅读时间需要 4 分钟。

注意:只能lib图书馆kernel编译到位。例如下列:
alps/kernel/
alps/mediatek/custom/common/kernel/
alps/mediatek/custom/$platform/kernel/
alps/mediatek/custom/$proj/kernel/
alps/mediatek/kernel/
alps/mediatek/platform/$platform/kernel/core/
alps/mediatek/platform/$platform/kernel/drivers/
如果第3方库名称为test.a
(1). 假设存放的文件夹存在Makefile,那么仅仅需在该Makefile最后加入:
    obj-y += test.a
    然后将test.a文件拷贝到该文件夹下,
    又一次命名为test.a_shipped,目的是防止clean kernel阶段把该库给清除掉!
    又一次编译kernel就可以。

(2). 假设存放的文件夹不存在Makefile。比方在alps/mediatek/custom/文件夹下的kernel文件夹都没有Makefile,这时须要自行加入一个Makefile,内容和第1种方法差点儿相同:
    obj-y := xxx.o yyy.o test.a
    以上表示将xxx.c/yyy.c和test.a编译到kernel
    然后将test.a文件拷贝到该文件夹下并又一次命名为test.a_shipped
    又一次编译kernel就可以。

注意:alps/mediatek/custom/common/kernel/touchpanel/xxx文件夹下的文件会和alps/mediatek/custom/common/kernel/touchpanel/src文件夹合并,obj-y要将两个文件夹下的obj所有增加才行,否则编译失败。也能够用下面Makefile,自己主动将所有obj增加obj-y。省却麻烦。其它文件夹如有类似的情形一样处理。
    加入的Makefile(将全部*.c变为*.o并加入obj-y):
    include $(MTK_PATH_BUILD)/common.mk
    path := $(if $(filter yes,$(KBUILD_OUTPUT_SUPPORT)),$(srctree)/$(obj),$(obj))
    obj-y := $(patsubst %.c,%.o,$(subst $(path)/,,$(call wildcard2,$(path)/*.c)))
    obj-y += test.a
 
说明:对于kernel的Makefile编写规则说明,能够到网络搜索相关材料參考。比方obj-y表示要编译kernel,和obj-m说是编译module,obj-n要么obj-他说,他们并没有编译

版权声明:本文博主原创文章。博客,未经同意不得转载。

转载于:https://www.cnblogs.com/mengfanrong/p/4777869.html

你可能感兴趣的文章
git常用操作
查看>>
京东SSO单点登陆实现分析
查看>>
u-boot启动第一阶段
查看>>
MySQL批量SQL插入性能优化
查看>>
定义列属性:null,default,PK,auto_increment
查看>>
用户画像展示
查看>>
C#中StreamReader读取中文出现乱码
查看>>
使用BufferedReader的时候出现的问题
查看>>
批处理文件中的路径问题
查看>>
hibernate出现No row with the given identifier exists问题
查看>>
为什么wait()和notify()属于Object类
查看>>
配置NRPE的通讯
查看>>
shp系列(一)——利用C++进行shp文件的读(打开)与写(创建)开言
查看>>
匹配两个空格之间的字符。。。
查看>>
CSS 文字溢出 变成省略号 ...
查看>>
Spring事务
查看>>
java编程基础(三)流程控制语句
查看>>
让数据库跑的更快的7个MySQL优化建议
查看>>
jquery 取id模糊查询
查看>>
解决在vue中,自用mask模态框出来后,下层的元素依旧可以滑动的问题
查看>>