【问题标题】:Xcode 4.5.2 errors are found but Build is marked as Succeeded发现 Xcode 4.5.2 错误但 Build 标记为 Succeeded
【发布时间】:2012-12-06 21:56:16
【问题描述】:

这个问题和这个很相似:Xcode 4 Preview 4 displays "Build Succeeded" but with errors

链接中提出的不同解决方案不起作用。我尝试使用产品清理,删除派生数据,重新启动 XCode 和 Mac,但问题仍然出现。

似乎所有错误都链接到项目的预编译头文件:虽然 PCH 工作正常并且本身没有错误,但报告的错误看起来像是找不到此特定文件的 pch。 有时,在构建过程中,错误会随机出现和消失。有人对此有想法吗?

错误仅出现在编辑器中打开的文件中。如果我在 xcode 中关闭文件但保持项目打开,则根本不会报告任何错误。

【问题讨论】:

  • 错误的屏幕截图或副本可能会有所帮助。否则,您可以尝试修改 pch 文件,以便它能够检测到更改并重新编译它,可能会永久清除您可能遇到的任何错误。
  • 报错多为“Use of undeclared identifier XXX”,而XXX标识符是在pch中使用#define定义的
  • 您假设 .pch 文件已找到/正常。尝试在 .pch 文件中加入明确的“#warning “This is BAD!”,然后重新编译。如果您没有收到警告,则 Xcode 没有找到您的 .pch 文件。
  • pch中定义的常量在整个项目中使用,项目构建和运行完全正常。

标签: xcode build compiler-errors


【解决方案1】:

我不确定向 pch 添加定义是否会如您所想。尝试创建一个常量标头并在那里添加您的定义。然后你可以在你的 pch 文件中包含 import 语句,它应该可以这样工作。

【讨论】:

  • pch 就是这样做的,通过定义导入其他 .h。这一直很好,直到有一天它开始看到不存在的错误。我发现它看到的唯一虚假错误是在打开的文件中。
【解决方案2】:

您是否尝试过清理构建文件夹?

在 XCode 中,打开产品菜单,然后按住选项。 Clean 应更改为 Clean Build Folder。

编辑:

你也可以按 + + + K

【讨论】:

  • 立即尝试,没有奏效。这个问题正在追逐我的两个项目。对于明确包含的同一个头文件,在两个项目中显示相同的“未定义”错误。这是突然发生的,系统或编译器安装没有任何变化。
  • 哇,这对我有用。我多年来一直在使用 Xcode,但从来不知道这一点。我只是重新启动Xcode。这种密钥映射的可发现性太可怕了!
【解决方案3】:

我也遇到了同样的问题,但两种清洁方式都没有帮助。我还尝试删除构建文件夹,重新启动 xcode 等,对我来说最终解决问题的是删除错误引用的文件并重新添加它们。

另外,我在事后调查了错误,问题似乎是 XCode 的“显示实时问题”功能。 (这可以在首选项中取消选中,这也解决了这个问题,但作为一个解决方案并不令人满意,因为我已经成长为享受 xcode 的实时代码感。)

【讨论】:

  • 我不能只是重新添加所有文件,因为有很多文件受到影响,但取消选中 Xcode 首选项中的“显示实时问题”可以解决问题。我宁愿让问题在我构建之前不出现,也不愿一直有几十个假问题。
【解决方案4】:

清理、关闭、重新启动 - 对我没有任何帮助。

对有问题的 pch 文件进行简单的触摸/编辑即可解决问题。

【讨论】:

  • 令人惊讶的是,这对我有用...在 XCode 5.0.1 中:(
  • 这绝对是真的..由于某种原因文件没有被编译或什么的
  • 这是修复。此外,在 Xcode 5.x 中,您可以强制重新编译 xxx-Prefix.pch,方法是在 Xcode 中选择它并运行 Product > Perform Action > Compile "xxx-Prefix.pch"。
  • 在 XCODE 6.1 中也为我工作过!!
【解决方案5】:

清理产品文件夹并重新启动对我没有帮助。我在删除 DerivedData 文件夹后开始看到这个。我能够通过这样做来“修复”:

  1. 干净的构建。
  2. 存档
  3. 构建

【讨论】:

  • 存档也帮助了我。在我执行pod update 之后,XCode 开始出现故障。
【解决方案6】:

加上我的两分钱:我的解决方案是稍微改变 pch 文件中的导入顺序。

也许这与简单地编辑文件有关,但我尝试“触摸”它并进行编辑,唯一能解决问题的“事情”是将一些导入移到其他导入之前。

【讨论】:

    【解决方案7】:
    Go to xcode install folder like below.
    

    /Users/vinod/Library/Developer/Xcode

    步骤 1 退出 xcode

    Step-2 删除 DerivedData 文件夹

    步骤 3 现在打开项目并清理它,所有问题都已解决。

    【讨论】:

      【解决方案8】:
      1. 删除派生数据
      2. 清理项目
      3. 退出 Xcode 并重新打开它。

      【讨论】:

        【解决方案9】:

        从 .pch 文件中删除最后一个#import,构建应用程序,然后将其放回去并再次构建它对我来说是诀窍。

        如果您仍然看到错误,那么您可以对最后两个导入、最后三个导入等重复此步骤。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-12-31
          • 1970-01-01
          • 2010-11-14
          • 1970-01-01
          • 1970-01-01
          • 2019-08-29
          相关资源
          最近更新 更多