- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
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/
Android NDK指南对Adnroid.mk中的两个变量的解释如下: LOCAL_LDLIBS - The list of additional linker flags to be used w
我将 libsonivox.so 复制到/platforms/android-14/arch-arm/usr/lib/中,我的 android.mk 文件是: LOCAL_PATH := $(call
我试图在我的应用程序中包含 liblog 以使用 android 日志打印。 我尝试将它包含在 LOCAL_LDLIBS 中 LOCAL_LDLIBS := -llog 它不起作用。我收到以下错误:
我是一名优秀的程序员,十分优秀!