自己添加的android模块不编译的问题
来源:互联网 发布:网站seo什么意思 编辑:程序博客网 时间:2024/05/18 21:40
1、android 5.0
including ./hardware/invensense/Android.mk ...
TARGET_2ND_ARCH--yes
build/core/shared_library.mk:12: sensors.mt: LOCAL_MODULE_PATH for shared libraries is unsupported in multiarch builds, use LOCAL_MODULE_RELATIVE_PATH instead
build/core/base_rules.mk:550: 警告:覆盖关于目标“out/target/product//system/lib/hw/sensors.mt.so”的命令
build/core/base_rules.mk:550: 警告:忽略关于目标“out/target/product//system/lib/hw/sensors.mt.so”的旧命令
build/core/dynamic_binary.mk:84: 警告:覆盖关于目标“out/target/product//symbols/system/lib/hw/sensors.mt.so”的命令
build/core/dynamic_binary.mk:84: 警告:忽略关于目标“out/target/product//symbols/system/lib/hw/sensors.mt.so”的旧命令
2、自定义模块需要添加编译指定PRODUCT_PACKAG环境变量
我们在开发中,经常会碰到需要自己添加独立模块的时候,笔者以前也没太关心这个问题,以为写好Android.mk就可以了,其实还不是这么回事。
把自定义的模块放在android顶层目录development下面,比如模块名字是libcsiJni,模块的Android.mk如下:
- ifeq ($(TARGET_PRODUCT),crane_EW1021H_C)
- LOCAL_PATH:= $(call my-dir)
- include $(CLEAR_VARS)
- LOCAL_MODULE_TAGS := optional eng
- #LOCAL_MODULE_TAGS := eng
- LOCAL_SRC_FILES := csilib.cpp
- LOCAL_C_INCLUDES:= \
- $(TOP)/device/softwinner/common/hardware/include \
- $(TOP)/frameworks/base/include \
- device/softwinner/crane-common/hardware/libcsidecoder
- LOCAL_SHARED_LIBRARIES:= libutils libbinder libui liblog libcutils libcsidecoder
- ifeq ($(DLOPEN_LIBSECCAMERA),1)
- LOCAL_SHARED_LIBRARIES+= libdl
- endif
- LOCAL_PRELINK_MODULE := false
- LOCAL_MODULE:= libcsiJni
- include $(BUILD_SHARED_LIBRARY)
- endif
在使用eng模式下编译,能够正常编译出来。但是在user模式下不编译,手动进入该目录,执行mm可以正常编译。Eng跟user版本的差异我们一般也知道,但是使用的optional,按道理说是所有模式下都可以编译的。什么原因呢?
从现象上看,应该是编译路径没有添加进去。搜索了一下资料,自定义的模块需要添加编译指定,PRODUCT_PACKAG环境变量。可以在device下面具体产品目录下的crane_productXXX.mk中或者build/target/product/core.mk中添加,示例如下:
- PRODUCT_PACKAGES += \
- libcsiecoder \
- libcsiJni \
- CSIIN
本身这种问题就是很初级的问题,没什么技术含量,就当做个笔记吧!
- 自己添加的android模块不编译的问题
- 自己添加的android模块不编译的问题
- android自己添加的模块在user模式下不编译的问题
- 自定义android模块不编译的问题
- openwrt添加自己的应用程序(SDK下编译模块)出现的问题
- 在android源码编译自己的模块
- android自己添加的模块在user模式…
- android源码模块编译出现的问题
- 编译Android的模块
- android studio 添加编译自己的github库
- 如何把一个自己写的外部驱动模块编译添加到内核中 来自网络
- 2.6 下添加自己的内核模块
- 向内核添加自己的模块
- 向内核添加自己的模块
- 将自己的模块编译进入内核
- 将自己的模块编译进入内核
- 【Nginx】编译进去自己的HTTP模块
- 2.4内核编译添加单独的模块!
- MC9S12G128 SCI设置
- IE浏览器利用ActiveXObject对象对文件系统进行操作
- HDU 2932 Extraordinarily Tired Students
- 创建DATAGUARD的主要步骤
- task_struct
- 自己添加的android模块不编译的问题
- Android设计模式系列(5)--SDK源码之备忘录模式
- javamail接收邮件(较全代码)
- 白色情人节临摹酷黑登陆页0.v03.14
- XCTest进行单元测试
- Android Studio 插件 —— ButterKnife注解式开发
- edit pulse 破解注册码
- Android例子源码指定号码短信拦截源码
- iOS开发系列—Objective-C之Foundation框架