gpt4 book ai didi

ios - 将框架弱链接到静态库

转载 作者:行者123 更新时间:2023-11-28 23:39:26 25 4
gpt4 key购买 nike

问题

我的项目是这样安排的:

  • 应用程序
    • 框架
      • 静态库(常用代码)

静态库将根据 GoogleWebRTC 框架启动。不幸的是,这种依赖关系只能通过 WebRTC.org 构建为框架。 .出于维护原因,他们删除了构建静态库的能力。

问题

静态库可以弱链接到GoogleWebRTC框架吗?

  • 应用程序
    • 框架
      • 静态库(“CommonCode”)
    • GoogleWebRTC

想到的一些解决方案是:

  • 在静态库中包含 WebRTC 头文件,并使用自定义模块映射进行构建,以便 include "<WebRTC/WebRTC.h>作品。然后将库嵌入并链接到 App 目标中
  • 以某种方式将 GoogleWebRTC.framework 转换为静态库,并将 header 和二进制文件嵌入“CommonCode”静态库
  • 我...不记得我想到的其他解决方案。当我想起来的时候我会更新这个。

最佳答案

Google 删除静态目标的决定令人遗憾。

如果有帮助,您可以使用 mesibo webrtc 框架,它是一个静态框架,使用修改过的忍者文件构建。唯一的缺点是,它不像谷歌构建那样定期更新(通常滞后一个月的同步)。

https://github.com/mesibo/mesibowebrtcframework

你所要做的就是从mesibo版本复制WebRTC.framework/WebRTC,它只是一个静态库,使用lipo -extract<提取 并使用 lipo -create 将其与您自己的库重新打包。

以下是您将在 Mesibo 和 Google 版本的 WebRTC 框架中看到的区别

美西博版

$ file WebRTC.framework/WebRTC
WebRTC.framework/WebRTC: Mach-O universal binary with 4 architectures: [i386:current ar
archive random library] [arm64]
WebRTC.framework/WebRTC (for architecture i386): current ar archive random library
WebRTC.framework/WebRTC (for architecture armv7): current ar archive random library
WebRTC.framework/WebRTC (for architecture x86_64): current ar archive random library
WebRTC.framework/WebRTC (for architecture arm64): current ar archive random library

和谷歌版本

$ file WebRTC.framework/WebRTC
WebRTC.framework/WebRTC: Mach-O universal binary with 4 architectures: [x86_64:Mach-O 64-bit dynamically linked shared library x86_64] [arm64]
WebRTC.framework/WebRTC (for architecture x86_64): Mach-O 64-bit dynamically linked shared library x86_64
WebRTC.framework/WebRTC (for architecture i386): Mach-O dynamically linked shared library i386
WebRTC.framework/WebRTC (for architecture armv7): Mach-O dynamically linked shared library arm_v7
WebRTC.framework/WebRTC (for architecture arm64): Mach-O 64-bit dynamically linked shared library arm64

如果您需要更多信息,请告诉我!

关于ios - 将框架弱链接到静态库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53899319/

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