/ usr / bin / codesign失败,退出代码为1

时间:2009-07-07 03:54:08

标签: iphone ios xcode deployment code-signing

我正在尝试部署我的第一个开发iPhone应用程序,并遇到了一些问题。我已成功通过在线配置助手,但现在我卡住了。无论我做什么,我总会得到以下错误。

  

/ usr / bin / codesign失败,退出代码为1

任何人都有任何想法为什么会这样?

26 个答案:

答案 0 :(得分:54)

<强>更新
原始答案中的技术说明现已弃用。 Apple在新文档中发布了一系列代码签名问题(以及一些解决方案):Technical Note TN2407 Code Signing Troubleshooting Index

检查构建设置中的CODE_SIGN_IDENTITY属性。您的配置文件是否在那里选择? 您还需要在应用.plist中输入有效的捆绑包标识符 标识符必须与生成配置文件时提供的标识符相匹配 Apple有一个关于here的技术说明。

答案 1 :(得分:25)

我刚刚遇到了这个错误,这就是我发现的情况,以防万一:我发现您可以右键单击Xco​​de中的错误消息并选择展开以获取更多详细信息,包括问题描述。 / p>

在我的情况下,我在不同的钥匙串文件中有两个同名的开发人员证书副本,Xcode无法确定使用哪一个。

答案 2 :(得分:16)

Xcode 9.0中的codeign问题可能是一个奇怪的答案。我也收到了这个错误,不知道该怎么做,因为一切都是正确的。

我去了钥匙串,我有登录选项&#34;解锁&#34;。我锁定它并再次编译我的构建。 Xcode本身让我打开访问钥匙串。我提供了访问权限并且有效。

步骤是:

  1. 转到钥匙串
  2. 锁定它
  3. 归档代码,重新构建项目

答案 3 :(得分:13)

我有完全相同的错误,并在阳光下尝试了一切,包括本页其他地方的内容,但没有成功。对我来说问题是,在Keychain Access中,实际的Apple WWDR证书被标记为“始终信任”。它必须是“系统默认值”。这也适用于您的开发和分发证书。如果其中任何一个被错误地设置为“始终信任”,则显然会导致此问题。

因此,在Keychain Access中,单击Apple Worldwide Developer Relations Certificate Authority证书,选择获取信息。然后,展开信任设置,对于“使用此证书时”的组合框,选择“系统默认值”。

其他人评论说,您可能必须在这些错误系统登录钥匙串中执行此操作。

答案 4 :(得分:8)

当你遇到这种错误时可能有很多原因:

  1. 检查您是否在设置中选择了包含有效代码签名标识和有效捆绑标识符的配置文件。 (转到构建设置 - &gt;签名 - &gt;配置文件)。

  2. 打开钥匙串访问,然后点击左上方的锁定图标,这样它将锁定登录钥匙串,然后再次点击解锁。

  3. enter image description here

    1. 转到文件 - &gt;项目设置 - &gt;派生数据并删除项目构建文件夹。之后,清理并构建您的应用程序。

答案 5 :(得分:6)

我在分发版本中遇到了同样的问题。它突然发生了。事实上,几天前我没有遇到这个问题,我的Ad-Hoc版本编译正确。出现此问题是因为我的证书今天刚过期。所以我按照Apple的指导创建了一个新的临时文件:(http://developer.apple.com/ios/manage/distribution/index.action)。

在网上花了几个小时后,确保我没有因为什么可能出错而摔倒。根据Tobias和Dan Ray的建议,这就是拯救我的原因:

  1. “...发现您可以右键单击Xco​​de中的错误消息以查看详细信息”。
  2. “......问题是我的系统密钥链上的过期证书。默认情况下,Keychain Access不会显示过期的证书”。
  3. 详细信息告诉我关于两个证书的模糊匹配。其中一个恰好是系统密钥链中的过期证书。所以我删除了过期的那个然后它工作了!在使用钥匙串实用程序创建分发证书时,我还担心要在“通用名称”中输入什么:我的名字或我的公司名称。在我的情况下,我输入了我的名字。我猜它与开发人员的自动回复邮件所解决的标题相同。

    很好的帮助。感谢。

答案 6 :(得分:2)

对我有用的是在构建设置中将--deep添加到其他代码签名标志。 更多信息请访问:Codesign of Dropbox API fails in Xcode 4.6.3: "code object is not signed at all"

不幸的是,这种模糊的错误条件有400种不同的解决方案,但我离题了。

答案 7 :(得分:2)

如果在编码符号错误之前的错误说“资源分叉,查找程序信息或类似碎屑不允许”,

然后导航到终端中的.app文件并输入:

xattr -cr&lt; path_to_app_bundle&gt;

参考:https://developer.apple.com/library/content/qa/qa1940/_index.html

答案 8 :(得分:1)

同样的问题与模糊(匹配“iPhone开发人员:[我]”和/// tweetdeck的库privatedata文件。通过将文件移动到垃圾箱并重新登录到Tweetdeck,再次设置密码来修复它。真是太痛苦了。

答案 9 :(得分:1)

在我的情况下,错误是由于我在钥匙串上有两个同名的钥匙。我删除了旧的,解决了这个问题。

转到详细信息向我展示真正的问题。

答案 10 :(得分:1)

我遇到了同样的问题,但错误日志中也列出了这个:CSSMERR_TP_CERT_NOT_VALID_YET

查看KeyChain中的证书显示了类似的消息。问题是由于我的Mac系统时钟设置不正确。一旦我设置了正确的区域/时间,证书就被标记为有效,我可以在iPhone上构建和运行我的应用程序

答案 11 :(得分:1)

我也收到了这个错误(“/ usr / bin / codesign失败,退出代码为1”),当我查看Keychain Access时,我的开发者证书被标记为“此证书由未知权限签名”。我最近升级到Mac OS 10.8并且从那时起还有其他一些XCode(4.5.2)问题。事实证明我没有安装WWDR中间证书。我从iOS Provisioning Portal下载了,安装在Keychain Access中,我的项目再次构建!

答案 12 :(得分:1)

经过数小时的谷歌搜索和尝试不同的事情,这就是为我解决的问题:

  1. 确保系统中没有证书&gt; Keychain Access上的Certificates选项卡。从那里删除所有重复的证书。

  2. 除了开发人员证书之外,还要在配置门户的证书下安装WWDR中间证书,并确保在Login&gt;中看到它。 Keychain Access上的证书选项卡。

  3. 希望这有助于你们中的一些人!

答案 13 :(得分:1)

当我收到此错误时,我甚至没有尝试签署该应用。我正在编写一个测试应用程序,并不关心签名。 为了摆脱这个消息,我不得不选择“不要代码签名”#34;来自代码签名下的构建设置。

enter image description here

答案 14 :(得分:1)

有时你的构建文件夹只需要清理 - 它肯定对我有用。感谢loafer-project解决方案。

答案 15 :(得分:1)

我遇到了同样的问题。最后,事实证明我的私钥不允许代码签名访问它。人们可以在钥匙串应用程序的信息对话框中看到这一点。

答案 16 :(得分:1)

我必须同意托比亚斯。错误太普遍了。当同样的事情发生在我身上时,我挖掘了错误信息并意识到我搞砸了构建属性中的某些东西,但没有代码签名。所以,是的,我会深入了解细节。

答案 17 :(得分:0)

就我而言,经过几天的研究,

我所做的所有旋转工作如下:

  1. 删除钥匙串上的所有证书。
  2. 转到您的Apple帐户。 a)下载要安装在钥匙串上的指定证书。 b)(可选)还创建并下载require配置文件。
  3. 在Xcode中,清理您的项目。这可能需要一些时间。
  4. 构建您的项目。

这应该适用于类似的代码签名问题。

请注意,在此过程中,操作系统将要求您进行凭据验证。

答案 18 :(得分:0)

扔掉我的评论,我只是在偶然地在一个应用程序请求上单击DENY之后尝试刷新我的开发环境之后才发现这个问题,在四处寻找之后,我发现许多事情似乎没有用。这是我尝试修复的全部顺序,以及是否成功:

1)试图清除DerivedFiles并重新启动XCode-没有骰子

2)尝试登录并解锁钥匙串,然后重新启动XCode-没有骰子

3)尝试在XCode中刷新我的开发者帐户-没有骰子

4)硬着头皮,只是重置我的整个钥匙串,这样做后,我的开发人员帐户已注销(重新登录),然后重新启动XCode-没有骰子

5)在此处找到一篇文章,说我们需要将[login | local | System] / certificate / Apple Worldwide Developer Relations证书颁发机构设置为“系统默认值”。但就我而言,它已经设置为系统默认值-没有骰子

6)然后,我查看了实际的开发人员证书登录名/我的证书/ Mac Developer:当我在其中查看时,在允许访问之前,它已正确设置为Confirm,但在下部没有任何条目。应该有[Xcode,codesign,productbuild]。我删除了证书条目,然后重新启动了XCode-Bingo

已添加证书,然后提示我。所以我做了什么,我按了“ allow allow”(总是允许),然后勉强自己。

我不得不回过头来再次删除证书,然后在干净的构建过程中经历了大约20个允许对话框。完成后,我就可以完全构建。

答案 19 :(得分:0)

您提到的代码签名中存在相同的未知错误。与提供的答案类似(但有所不同),我只是锁定了钥匙串访问权限并对其进行了解锁,因此能够再次构建并运行到我的设备上。如果有人遇到相同的问题,请先尝试一下,然后再解决修改钥匙串密码的麻烦。

答案 20 :(得分:0)

有点老问题,但似乎仍然会发生。另一种解决方案:

在git中恢复分支后发生在我身上。 尝试清理,清理构建,删除派生和重新启动Xcode,但没有运气。

尝试重启comp。

答案 21 :(得分:0)

另一个原因, 检查您的开发者帐户是否与xCode

相关联

enter image description here

答案 22 :(得分:0)

一个可能的原因是您没有权限在构建目录上写入。

解决方案:删除项目文件夹中的所有构建目录并重建您的应用程序。

答案 23 :(得分:0)

您需要注意的一件事(这是我犯的一个愚蠢的错误,但它确实发生了),是附加到CSR的电子邮件地址需要与连接到Apple Dev的电子邮件地址相同帐户。一旦我使用了新的CSR并重建了所有的证书和配置文件,所有这些都在appleville中很好。

答案 24 :(得分:0)

我刚遇到此错误,原因是我试图将构建文件写入无法正常工作的网络驱动器。从我的桌面再次尝试,它工作得很好。 (移动后可能需要“清理”构建。只需从“构建”下拉菜单中选择“清除所有目标”。)

Tobias是正确的,通过右键单击它来查看代码的详细信息,看看你的具体问题是什么。

答案 25 :(得分:-1)

在终端中打开项目路径,然后在终端

中输入以下命令

1)找到。 | xargs -0 xattr -c

2) xattr -rc。

这适合我。