【问题标题】:Xcode 5.1 compiler errors after adding a framework添加框架后的 Xcode 5.1 编译器错误
【发布时间】:2014-04-07 21:35:36
【问题描述】:

所以我是 Xcode 和 Mac 的新手,在尝试添加新框架后我似乎遇到了很多错误。我需要 NSMatrix 类,但它不包含在默认框架中(Foundation、CoreGraphics、UIKit、XCTest 是。所以我使用 Project Navigator>General>Linked Frameworks and Libraries 添加了 AppKit 框架。在添加之后并#imported Appkit/ AppKit.h 在需要 NSMatrix 类的 .h 中,NSMatrix 的错误消失了,它变成了蓝色。表明它找到了我假设。

之后我尝试编译项目并得到这些错误:

http://i1346.photobucket.com/albums/p694/parkertmorris/ScreenShot2014-04-07at42152PM_zps3a1fdfdd.png

我尝试删除 AppKit 框架和对其的引用并进行编译,但我仍然收到这些错误。我还尝试清理项目并删除 DerivedData 文件夹,但没有任何变化。

有什么办法可以解决这个问题吗?试图研究这个问题至少一个小时。

谢谢

【问题讨论】:

  • AppKit 不是 iOS 框架。它是用于编写 Mac 应用程序的 OS X 框架。你不能在 iOS 上使用它。
  • 不知道!泰!

标签: macos compiler-construction compiler-errors xcode5


【解决方案1】:

你和我都是 SO 的新用户(虽然我是长期读者),因此我会尽力提供帮助 :)

我注意到您在“iOS”下标记了它。 AppKit 和 NSMatrix 是特定于 OS X 的,不适用于 iOS,您可能希望删除 iOS 标签并适当地标记问题。

当我在 XCode 中遇到这样的问题时,这种问题随着经验的增加而发生的频率较低,但间隔仍然很烦人,我倾向于使用 Git(或任何你喜欢的 SCM)后退到最不混乱的地步。基于您的编译器错误仍然在没有 AppKit/NSMatrix 引用的情况下发生的事实,您的问题可能独立于框架存在,或者至少与框架一起存在。

尝试在您的项目包中打开您的 project.pbxproj 文件,并在相同的分组下查找 .h 文件的重复条目。这些类型的问题有时会在 Git 中 rebase/merging 时困扰我,并且 90% 的时间我可以通过对我的 project.pbxproj 文件进行非常简单的更改来解决它们。更好的是,尝试将您以前工作的 .pbxproj 与它的当前状态进行比较,看看发生了什么。

【讨论】:

  • 哦,有趣。我正在做的项目实际上是一个 ios 应用程序,我没有看到任何说 NSMatrix 不适合它的东西。所以很高兴知道。另外,由于我自己工作,所以我没有设置 GIT,但因为我知道这是一个很常见的情况,所以我下次会。不过,我会检查 pbxproj!另外我应该为 ios 而不是 NSMatrix 使用什么?我只是想在这个例子中制作单选按钮:developer.apple.com/library/mac/documentation/Cocoa/Conceptual/…
  • 好的,查看了 pbxproj 文件,没有看到任何重复项。我想我会尝试重新制作 proj 并重新添加我制作的文件 >.>
  • Appkit for Mac ~= UIKit for iOS。在 iOS 中,你可以使用 UIPicker 代替单选按钮 - developer.apple.com/library/ios/documentation/uikit/reference/… 对于任何规模的项目,甚至是小型个人项目,我绝对 100% 推荐 Git 或任何源代码控制。它使此类问题更易于跟踪,并且一旦您习惯了终端命令或 GUI,几乎不会给您的工作流程增加任何开销。
  • 另一种选择是滚动您自己的 UIButton - mobisoftinfotech.com/iphone-uibutton-tutorial-radio-buttons
猜你喜欢
  • 2014-04-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-31
  • 2015-11-24
  • 2014-04-15
  • 1970-01-01
相关资源
最近更新 更多