1

我想为一些我想包含在其他 iPhone 应用程序中的可重用代码创建一个静态框架。我通过创建一个包来创建这个框架。我已经将 twitter 库添加到这个框架中。问题是<libxml/xmlreader.h>需要 libxml2.dylib 的 twitter 库导入,所以我将 libxml2.dylib 添加到我的包的“Link Binary With Libraries”但是编译器给了我警告,代码无法编译。我收到了这些警告信息。

Unexpected dylib (/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/Frameworks//Foundation.framework/Foundation) on link line
Unexpected dylib (/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/Frameworks//CoreFoundation.framework/CoreFoundation) on link line
Unexpected dylib (/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/Frameworks//CoreGraphics.framework/CoreGraphics) on link line
Unexpected dylib (/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/Frameworks//MessageUI.framework/MessageUI) on link line
Unexpected dylib (/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/System/Library/Frameworks//UIKit.framework/UIKit) on link line
Unexpected dylib (/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator5.0.sdk/usr/lib/libxml2.dylib) on link line
4

4 回答 4

3

我只是克服了这个问题并想通了。将 CoreFoundation.Framework 等标准框架添加到自定义框架会让您无处可去。一旦您将它们从自定义框架中删除,这些警告就会消失。然后,最终用户必须在实现您的自定义框架时将所需的标准框架添加到他们的应用程序中。

于 2013-05-15T13:37:26.393 回答
0

我通过这一步解决了这个问题

Project target -> Build Settings -> Build Active Architecture Only (Debug) -> NO 
于 2014-07-08T02:46:46.677 回答
0

如果你只是想消除这些警告,也许你可以试试这个:

项目目标 -> 构建设置 -> 与标准库的链接 -> 否

于 2014-03-24T08:20:18.010 回答
0

我认为您需要将这些框架添加到您的项目中:

项目目标 -> 构建阶段 -> 将二进制文件与库链接 -> 将这些框架一一添加。

于 2012-12-16T09:01:55.057 回答