gpt4 book ai didi

iphone - 从 iPhone/CocoaTouch 库链接到库的正确方法

转载 作者:行者123 更新时间:2023-12-03 18:40:28 27 4
gpt4 key购买 nike

我正在为 iPhone 编写一个静态库,我想知道我正在做的事情是否值得推荐,或者我是否应该采取不同的方法。

我正在编写的静态库依赖于libxml2。 libxml2 有一个动态库(dylib)和一个静态库(a)。我尝试了两种方法。

方法一 - 当我尝试通过将“-lxml2”添加到“其他链接器标志”来链接静态库时,构建失败并显示以下消息:

/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/libtool: file: -lxml2 is not an object file (not allowed in a library)

方法二 - 我可以成功地从静态库链接到动态库,但我不确定 iPhone 上是否允许这样做(或正确的方法)。即使我正在构建静态库,Apple 是否允许静态库链接到动态库?我仍在学习静态库,但根据我的理解,dylib 中的代码将与我的代码结合起来创建一个库,因此链接 dylib 应该不是问题。

总结一下:

  • mylibrary.a -> libxml2.a [不起作用]
  • mylibrary.a -> libxml2.dylib [已构建,但这正确且可接受吗?]

最佳答案

libxml2.dylib 在 SDK 中可用。 正确的方法是在 Xcode 中双击目标节点/应用程序,然后在“常规”下单击“链接库”下的+...您应该找到 libxml2.dylib 在该列表中。

0:42 在此 Screencast您可以看到如何将 CoreGraphics 添加到项目中。

关于iphone - 从 iPhone/CocoaTouch 库链接到库的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/623089/

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