【问题标题】:How to add a dependency for a target如何为目标添加依赖项
【发布时间】:2016-02-29 17:49:34
【问题描述】:

libXYZ.so 不直接链接到目标时,如何添加共享库(让它成为libXYZ.so)作为LOCAL_MODULE 目标的依赖项。

如何确保构建系统首先构建依赖项(libXYZ.so),然后从Android.mk 执行LOCAL_MODULE 的命令

这是必需的,因为在我的构建中,它自己的依赖项 (libXYZ.so) 未使用,但使用了具有不同名称的符号链接。 (libABC.so -> libXYZ.so)。符号链接是在创建共享库后生成的,作为LOCAL_POST_INSTALL_CMD 的一部分。

【问题讨论】:

    标签: makefile android-source build-system


    【解决方案1】:

    您可以将库添加到先决条件列表中:

    LOCAL_MODULE: libXYZ.so
    

    但是您必须相信构建库的规则也会构建符号链接。将符号链接本身作为目标,将符号链接作为模块的先决条件,并将库作为符号链接的先决条件会更安全。

    【讨论】:

    • 我有 multilib 构建和符号链接是使用安装后命令创建的。正如您所说,不能保证会创建链接。如何创建创建符号链接的目标。我无法弄清楚如何以适用于 32 位和 multilib 构建的方式做到这一点。
    • 你知道如何创建符号链接没有 Make(例如ln -d libXYZ.so libABC.so)吗?你想编写一个可以在多个操作系统下工作的 makefile 吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-12-25
    • 2016-07-03
    • 2012-08-22
    • 2011-07-11
    • 1970-01-01
    • 2017-03-27
    • 1970-01-01
    相关资源
    最近更新 更多