【问题标题】:Need help in linking 3rd party static library in AOSP在 AOSP 中链接第 3 方静态库时需要帮助
【发布时间】:2013-04-24 15:53:56
【问题描述】:

我正在尝试将第 3 方库移植到 mediaplayerservice 以增强对许多容器格式的支持。

我能够构建第 3 方堆栈并从中获取库(静态库)。

现在,我想将此第 3 方库链接到 MediaPlayerService。 我不知道在 makefile 中的何处以及如何提及以链接此静态库。

我尝试添加以下行,
LOCAL_STATIC_LIBRARIES := libThirdparty
&&

LOCAL_LDLIBS += -l$(TOP)/frameworks/out/target/product/tvsimvbox/obj/STATIC_LIBRARIES/libThirdparty_intermediates/libThirdparty.a

但是,以上几行没有帮助。它给出了“未定义的引用”错误。

【问题讨论】:

    标签: android android-mediaplayer android-source android-build android-make


    【解决方案1】:

    可以链接。

    您可以使用 LOCAL_STATIC_LIBRARIES。 我的代码中的问题是我提到的顺序是错误的。 将使用(必需/依赖)库的库应该是第一个并且 提供的库应该是下一个。

    否则, LOCAL_LDFLAGS += -L"库路径" -lThirdparty

    【讨论】:

    • 如果您的目标是静态链接库,那么您的评论应该没问题。但是,请注意,如果您的解决方案必须在每个新的AOSP 发行版中都可扩展,那么您应该考虑动态链接。例如,您可能正在集成一个解析器(只是猜测),它也需要包含在未来的修订版中。与基于dll 的解决方案相比,使用静态链接管理树的成本更高。
    猜你喜欢
    • 1970-01-01
    • 2011-05-29
    • 2021-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多