【问题标题】:CorePlot linker errors after upgrading iOS SDK升级 iOS SDK 后 CorePlot 链接器错误
【发布时间】:2011-01-13 18:32:17
【问题描述】:

这似乎以前发生过,但不知何故最终自己解决了。它又发生了,我似乎无法解决这个问题。我使用 CorePlot Cocoa Touch 框架。一切都很好,直到我升级到新的 4.3 测试版。现在我的项目无法编译,并且给我与 CorePlot 相关的未知符号的链接器错误。我已经成为将框架添加到我的项目的专家,并且我已经检查并重新检查了尝试再次执行此操作的说明。

有没有我可以点击的按钮或任何东西可以让这个再次工作?

我使用these instructions尝试重新添加框架,但无济于事

编辑:顺便说一下,这对于模拟器来说编译得很好,并且运行图表也没有问题。为设备编译会给我链接器错误,如下所示:

  "_OBJC_CLASS_$_CPPlotRange", referenced from:


  objc-class-ref in GraphStatsWindow.o


  objc-class-ref in iPadGraphView.o


  objc-class-ref in GraphTrendView.o


  "_OBJC_CLASS_$_CPXYGraph", referenced from:


  objc-class-ref in GraphStatsWindow.o


  objc-class-ref in iPadGraphView.o


  objc-class-ref in GraphTrendView.o


   "_OBJC_CLASS_$_CPTextStyle", referenced from:


  objc-class-ref in GraphStatsWindow.o


  objc-class-ref in iPadGraphView.o


  objc-class-ref in GraphTrendView.o


  "_OBJC_CLASS_$_CPLineStyle", referenced from:


  objc-class-ref in GraphStatsWindow.o


  objc-class-ref in iPadGraphView.o


  objc-class-ref in GraphTrendView.o


  "_OBJC_CLASS_$_CPScatterPlot", referenced from:


  objc-class-ref in GraphStatsWindow.o


  objc-class-ref in iPadGraphView.o


  objc-class-ref in GraphTrendView.o


  "_OBJC_CLASS_$_CPAxisLabel", referenced from:


  objc-class-ref in GraphStatsWindow.o


  objc-class-ref in iPadGraphView.o


  objc-class-ref in GraphTrendView.o


  "_OBJC_CLASS_$_CPPlotSymbol", referenced from:


  objc-class-ref in GraphStatsWindow.o


  objc-class-ref in iPadGraphView.o


  objc-class-ref in GraphTrendView.o


  "_OBJC_CLASS_$_CPColor", referenced from:


  objc-class-ref in GraphStatsWindow.o


  objc-class-ref in iPadGraphView.o


  objc-class-ref in GraphTrendView.o


  "_OBJC_CLASS_$_CPFill", referenced from:


  objc-class-ref in GraphStatsWindow.o


  objc-class-ref in iPadGraphView.o


  objc-class-ref in GraphTrendView.o


  "_CPDecimalFromFloat", referenced from:


  -[GraphStatsWindow setNewGraph] in GraphStatsWindow.o


  -[iPadGraphView viewDidLoad] in iPadGraphView.o


  -[GraphTrendView setNewGraph] in GraphTrendView.o


  "_kCPPlainWhiteTheme", referenced from:


  -[GraphStatsWindow setNewGraph] in GraphStatsWindow.o


  -[iPadGraphView viewDidLoad] in iPadGraphView.o


  -[GraphTrendView setNewGraph] in GraphTrendView.o


  "_OBJC_CLASS_$_CPTheme", referenced from:


  objc-class-ref in GraphStatsWindow.o


  objc-class-ref in iPadGraphView.o


  objc-class-ref in GraphTrendView.o


ld: symbol(s) not found for architecture armv7

在 armv6 和 armv7 之间更改架构似乎没有任何作用

【问题讨论】:

  • 您看到的确切错误是什么?
  • 带有错误信息的已编辑问题
  • 我将目标检查器中的架构从“标准 (armv6 armv7)”更改为“优化 (armv7)”,现在它可以在我的 iPhone 4 上运行,但它在 3GS、3G 上的表现如何,还是 iPad?
  • 如果您的应用仅针对 armv7 编译,它将在那些 armv6 设备上崩溃。我刚刚遇到了同样的构建错误,正在寻求帮助。

标签: iphone ipad ios core-plot


【解决方案1】:

由于这是 iOS 测试版的一个问题,因此仍包含在 NDA 中,因此我将向您推荐 Apple Dev 论坛,在那里我找到了解决方案:

https://devforums.apple.com/message/369315#369315

唯一的建议是确保任何链接库都没有将“仅构建活动架构”设置为 YES,因为这会使您设置的任何其他多架构设置无用。

【讨论】:

  • 4.3已经发布了,可以发一下详细信息吗?
  • 关键是确保链接的核心图库上的 ONLY_ACTIVE_ARCH(仅构建活动架构)设置为 NO。还要注意,这是在目标和项目级别设置的。
  • 我遇到了同样的问题,这个解决方案不起作用,有什么建议吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-05-19
  • 1970-01-01
  • 2012-12-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多