gpt4 book ai didi

android - LOCAL_LDLIBS 与 LOCAL_LDFLAGS

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:18:38 26 4
gpt4 key购买 nike

Android NDK指南对Adnroid.mk中的两个变量的解释如下:

LOCAL_LDLIBS - The list of additional linker flags to be used when building your shared library or executable.
...


LOCAL_LDFLAGS - The list of other linker flags to be used when building your shared library or executable.
...

那么这两者有什么区别呢?

最佳答案

主要区别如下:

  • LOCAL_LDFLAGS 出现在最终链接器命令行上的目标文件和库列表之前,这是您要放置影响链接器行为的实际“标志”的地方。

  • LOCAL_LDLIBS 出现在最终链接命令行上的目标文件和库列表之后,这是您要放置实际系统库依赖项的地方。

区别的存在是因为静态链接在 Unix 上的工作方式,即目标文件、静态库和共享库的顺序对于确定最终结果非常重要,有时你真的要确保某些东西出现在其他。

最后,我建议遵循文档,即:

  • 将真正的链接器标志放入 LOCAL_LDFLAGS

  • 将系统库依赖放入LOCAL_LDLIBS

  • 仅将 LOCAL_LDLIBS 用于系统库依赖项。如果你想指向另一个库,最好将它们列在 LOCAL_STATIC_LIBRARIES 和 LOCAL_SHARED_LIBRARIES 中(即使这意味着为它们定义一个 PREBUILT_XXX 模块),因为这可以让构建系统为你自动计算出依赖关系和排序。

关于android - LOCAL_LDLIBS 与 LOCAL_LDFLAGS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22354041/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com