50

我的应用程序运行良好,然后我开始集成 SDK 以进行推送通知并停止两者之间的集成。我什至从我的项目中删除了 SDK 并尝试存档或运行应用程序,它给了我错误:

脂错误!!无法打开输入文件。

任何帮助将不胜感激,我已经给了足够的时间来解决这个问题,但失败了。

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/lipo:无法打开输入文件:/Users/XYZ/Library/Developer/Xcode/DerivedData/MyAPP-hjbmqpnmsoruqxbwlayqkjsojccv/Build /Intermediates/MyAPP.build/Debug-iphoneos/MyAPP.build/Objects-normal/armv7s/MyAPP(没有这样的文件或目录)

4

21 回答 21

67

我让它工作了,我只是在我的项目目标->构建设置->仅构建活动架构中进行了一个简单的更改,并将此构建活动架构设置为是。它现在工作正常..

更新 6 个月后:

更新到 Xcode5 后,我再次面临这个问题。这次我必须将项目目标-> 构建设置-> 有效架构更新为 armv7。我删除了 armv7s 和 arm64。

于 2013-06-28T12:02:26.287 回答
11

通过将“启用位码”设置为“否”对我有用。

现在我可以在设备上运行并提交到应用商店。

在此处输入图像描述

于 2015-11-17T02:36:00.280 回答
10

请注意,我在从 Carthage 切换到 CocoaPods 时得到了这个。解决方案是删除 Build Phases 部分中的“Remove Unneeded Architectures”。

于 2016-09-02T15:12:59.183 回答
6

这发生在我身上,因为我使用的是 cocoapods,并且工作区中的 Pods 项目对“仅构建活动架构”的设置与我的主项目不同(分别为“是”和“否”)。当我将两者都设置为“否”时,我能够在我的设备上构建和运行。

于 2014-02-27T01:36:57.643 回答
4

尝试从项目目标 -> 构建阶段 -> 编译源中删除已删除的文件。

希望有帮助。

于 2013-06-27T17:10:22.413 回答
4

如果有,请尝试移除已连接的 iPad/iPhone。这适用于我的情况。

于 2014-11-18T08:58:12.737 回答
1

就我而言,我在一些更新后执行了我的应用程序,然后尝试在 git 上提交它,但冲突毁了我的代码。那是一个悲伤的故事。

但幸运的是,我的系统上有一个备份,我用本地代码替换了损坏的代码。

现在在执行时我感到同样的问题。然后清理项目对我来说是神奇的棒子。我清理了项目,我很高兴。

于 2014-01-22T15:57:40.473 回答
1

对我来说,这是因为我的主要可执行文件和静态链接的库在 Build Settings > Architectures 中有不同的设置。该库设置为仅“标准架构”,但主 exe 设置为“标准架构(包括 64 位)”。

我认为发生的事情是,当构建过程链接所有内容时,它发现它缺少 64 位版本的库,从而导致此错误。

将它们全部设置为相同的值(有或没有 64 位)为我解决了这个问题。

于 2014-02-24T01:29:39.107 回答
1

这对我来说是一个可可足类问题。我正在运行 0.35.0、Xcode 6.1.1,显然我需要在我的 podfile 中提及我的目标,以便我所有的 cocoapod 都能与我的目标一起正常工作。

在我的 podfile 的底部,我添加了:

link_with 'Target A', 'Target B' ...

添加所有目标名称,关闭 Xcode,运行pod install,打开 Xcode,它应该会为您构建。

这是 github 问题:https ://github.com/CocoaPods/CocoaPods/issues/2627

于 2015-02-18T20:49:06.400 回答
1

我同时使用 Carthage 和 Cocoa Pods,这就是我在不删除 Build Phases 部分中的“Remove Unneeded Architectures”的情况下解决问题的方法:

• 转到目标中的“构建阶段”选项卡

• 将“Remove Unneeded Architectures”(或任何您调用的脚本)拖到更高的行(例如“Compile Sources”上方)。

• 清理和构建

希望有帮助!

于 2019-05-02T00:46:42.407 回答
1

当我决定清理我的派生数据文件夹时,发生了该错误。我不得不调用carthage update --platform iOS然后调用CleanXcode 并再次构建。希望可以帮助某人

于 2017-06-22T08:44:35.203 回答
0

In my case, the problem occurred because I had an object (AVAudioPlayer) instance variable declared with the same name in two controllers - the app delegate and one other controller. Strange, but the problem disappeared when I renamed one of them.

于 2015-01-28T19:37:11.160 回答
0

断开设备与 Mac 的连接时出现此错误,在我的项目名称上按我的项目(左上角的播放/停止构建按钮附近),选择设备 -> [iOS 设备] 并按产品 -> 构建我还想提一下该项目有很多 3rd 方库和一些安装了 pod 的库。

于 2014-03-25T08:59:12.267 回答
0

这些都不适合我。

经过一番挖掘(git reset 等)后,我发现我的工作区已损坏。我删除了 project.xcworkspace 的内容,一切恢复正常。

甚至重置都不起作用的原因是因为 .xcworskpace 在我的 .gitignore 中(就像我猜的很多一样)。

于 2014-12-05T13:07:58.160 回答
0

在我的框架搜索路径中重新设置了一堆无法访问的目录(一遍又一遍)之后,我遇到了这个错误。有人直到最后才导入他们正在开发的框架,并在代码中留下了对他们自己目录的引用。通过比较分支并从 pbxproj 中删除有问题的代码来解决

于 2014-08-07T07:41:51.467 回答
0

Swift 的新潜在答案:我们将此错误隔离为在类别文件中使用 nil 合并运算符 (??)。该运算符在我们项目的其他地方使用没有问题,但在这个特定文件中,删除它修复了 lipo 错误。

于 2015-06-05T16:38:12.760 回答
0

我尝试为调试和发布重新选择配置文件签名。这确实解决了这个问题。

于 2017-06-07T08:00:34.727 回答
0

这通常发生在更改 XCode 中的部署目标之后,并且在尝试构建之前可以通过“产品 > 清理”轻松解决。

于 2019-03-22T00:52:37.577 回答
0

我在我的项目中更新了一个框架,但不知何故错过了提交/推送它的一个文件“info.plist”(因为我的 gitignore 文件中有一些问题)。从那时起,其他所有人都开始收到此错误。因此,只需提交错过的 info.plist 文件即可解决问题。希望这可以帮助某人。

于 2016-10-14T11:26:45.710 回答
0

转到您的项目目录,找到构建文件夹并将其删除。然后做一个干净的构建,然后构建项目。

我希望这有帮助

于 2019-08-27T06:04:48.717 回答
-1

捆绑编译源文件

您必须在 Bundle Target 的 Compile Sources 中添加 .m 文件。

于 2015-07-16T11:52:10.807 回答