Android.mk添加到源码的编译中

当一个Android.mk文件被编写好之后,为什么执行了make 没有生成对应的.so文件或者可执行文件?

 

首先当在执行make libExample -j16的时候,会这个module进行编译,并生成可执行文件或者共享库

 

但是在执行完全编译的时候并不会把这个模块加进去参加整体编译,这其中有版本选择的关系,在Android.mk中有这么一句话

 

LOCAL_MODULE_TAGS := optional

这是说当前模块在所有的版本下都执行编译,其外还有三个编译版本的选择分别是eng(debug版本),user(release版本),test(userdebug版本,除了user版本的特性外还会安装标识为eng的模块,默认启用adbd)

 

还有当这个选对之后,其实还有一个原因导致问题,就是在设备编译的时候并没有引用进去。需要在devices下将这个module添加进去,让它参与到这个版本的编译中。

 

文件位置:/device/lge/bullhead/device.mk

 

在其中添加下面语句:

PRODUCT_PACKAGES += \

    libExample

 

下面的就是自己的模块名,这样就可以参与到编译了。

你可能感兴趣的:(Android)