objective-c - CoreText 框架 - 应用程序无法在模拟器中运行 - iOS

标签 objective-c xcode frameworks ios-simulator core-text

我有一个使用 CoreText 框架的应用程序。我能够在 iPhone 和 iPad 1 和 2 上成功运行该应用程序。

但是我无法在 xCode iPhone/iPad 模拟器中运行该应用程序。我收到以下错误消息:

ld: 警告:忽略文件/Users/croydonbod/Documents/iDevelopment/MyApp/CoreText.framework/CoreText,文件是为不受支持的文件格式构建的,这不是链接的架构 (i386)

架构 i386 的 undefined symbol : “_CTFontCreateWithName”,引用自: -[View drawRect:] in View.o “_CTFramesetterCreateWithAttributedString”,引用自: -[View drawRect:] in View.o “_CTFramesetterCreateFrame”,引用自: -[View drawRect:] in View.o “_CTFrameGetVisibleStringRange”,引用自: -[View drawRect:] in View.o “_CTFrameDraw”,引用自: -[View drawRect:] in View.o “_kCTFontAttributeName”,引用自: -[View drawRect:] in View.o “_kCTForegroundColorAttributeName”,引用自: -[View drawRect:] in View.o ld:未找到架构 i386 的符号 clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)

谁能解释为什么会这样?

谢谢。

最佳答案

看起来您将 CoreText 框架文件从 SDK 复制到您的应用程序中,而不是弱链接框架(这意味着适当的框架将为设备或模拟器正确加载)。

从您的项目中删除 CoreText 框架并重新添加它,确保取消选中“将项目复制到目标文件夹”复选框(如果出现)并且一旦 CoreText添加框架后,请确保为项目中的 CoreText 框架设置“相对于 SDK”位置。以下是为 UIKit 框架设置的方式:

enter image description here

关于objective-c - CoreText 框架 - 应用程序无法在模拟器中运行 - iOS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11367411/

相关文章:

ios - 用文本填充单元格中的标签

frameworks - 类库和框架有什么区别

ios - 使用 Cocoa 在 Swift 中的性能

iphone - 在iphone中从数据库中读取图像的问题

ios - 在 Xcode 9 GM 中运行单元测试时出现神秘的 NSInternalInconsistencyException

ios - 如何使用Swift在Xcode中组织文件以进行iOS开发?

javascript - 你能告诉我我做错了什么吗?

language-agnostic - 帮我选择一个能让我学到东西的网络开发框架/平台

php - cakePHP访问没有模型的表

objective-c - 从迭代NSMutableArray中删除对象