构建后步骤:将lib和标头复制到特定位置

时间:2012-10-22 08:45:58

标签: android android-ndk

我正在尝试查找有关如何为我的静态库添加post-build目标的信息,该库将库及其关联的头文件复制到特定目录。

我读到了LOCAL_EXPORT_C_INCLUDES,但我仍然不确定它究竟是做什么的,因为它似乎不会为我复制标题。

通常我想将lib复制到$(LOCAL_PATH)/../lib和标题$(LOCAL_PATH)/../include

1 个答案:

答案 0 :(得分:4)

Android.mk

之后,将以下内容添加到include $(BUILD_SHARED_LIBRARY)的末尾
all: $(LOCAL_PATH)/../lib/$(notdir $(LOCAL_BUILT_MODULE))

$(LOCAL_PATH)/../lib/$(notdir $(LOCAL_BUILT_MODULE)): $(LOCAL_BUILT_MODULE)
    cp $< $@
    cp $(wildcard $(LOCAL_PATH)/*.h $(LOCAL_PATH)/../include

请注意,制作需要前导标签,而不是cp之前的空格。

可以不同地定义最后一行以复制编译器可用的所有包含文件:

    cp $(wildcard $(LOCAL_C_INCLUDES)/*.h $(LOCAL_PATH)/../include

但是没有办法自动选择应该复制哪些.h文件,哪些文件应该单独保留。