我的 iPhone 项目每隔一段时间都无法构建,并给了我以下信息:
CodeSign build/Debug-iphoneos/coati.app
cd /Users/rpeck/Documents/Coati
setenv PATH "/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
setenv _CODESIGN_ALLOCATE_ /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate
/usr/bin/codesign -f -s "iPhone Developer: Ryan Peck (6VVQHFN5NU)" --resource-rules=/Users/rpeck/Documents/Coati/build/Debug-iphoneos/coati.app/ResourceRules.plist --entitlements /Users/rpeck/Documents/Coati/build/Coati.build/Debug-iphoneos/Coati.build/coati.xcent /Users/rpeck/Documents/Coati/build/Debug-iphoneos/coati.app
/Users/rpeck/Documents/Coati/build/Debug-iphoneos/coati.app: object file format invalid or unsuitable
Command /usr/bin/codesign failed with exit code 1
我第一次构建它总是失败。第二次成功,即使我在构建之间对文件进行了更改。如果我清理目标,下一次构建将始终失败。
这一切都处于调试模式。在发布模式下,构建失败的情况相同,但成功的构建在安装到手机上时总是显示“加载失败”。我检查了配置文件是否匹配并被选中。
我发现了一个类似的问题,其中答案原来是项目中的多个 Info.plist 文件。我已经完全查看了我的,没有额外的 Info.plist 文件。我还删除并重新安装了我的配置文件。
我看到的有关此错误的其他答案涉及定义 ResourceRules.plist 文件的路径。我已经尝试了在这些情况下提出的解决方案,但没有成功。
现在,自从我第二次构建它以来,它比任何事情都更不便。我更担心的是,当我准备好进行分发构建时,它会给我带来问题,特别是因为发布构建配置不会安装到手机上。
当我没有注意到 xCode 是打开的事实时,所有这一切都是在一个 mercurial 提交问题之后开始的。它损坏了我的项目文件,虽然所有源代码都很好,但是当我创建一个新项目然后引入我所有的旧源文件时,这个问题就出现了。