Xcode 分段错误:尝试协同设计.app时为11

Xcode 分段错误:尝试协同设计.app时为11,xcode,macos,codesign,Xcode,Macos,Codesign,我无法找到与代码签名相关的此错误的定义。我真的很困惑该怎么办 尝试执行此命令行时出错: codesign -s "Developer ID Application: Name (ID)" -fv --deep Application.app/ 系统: 约塞米蒂10.10.3上的XCode 6.2 我已经重新安装了XCode,仍然没有任何运气。这是针对桌面应用程序的 道歉,如果这是一个愚蠢的问题 传递--timestamp=none似乎会使崩溃消失。在这种情况下,请检查网络设置,codesign

我无法找到与代码签名相关的此错误的定义。我真的很困惑该怎么办

尝试执行此命令行时出错:

codesign -s "Developer ID Application: Name (ID)" -fv --deep Application.app/
系统:

约塞米蒂10.10.3上的XCode 6.2

我已经重新安装了XCode,仍然没有任何运气。这是针对桌面应用程序的

道歉,如果这是一个愚蠢的问题

传递
--timestamp=none
似乎会使崩溃消失。在这种情况下,请检查网络设置,
codesign
可能无法访问例如timeserver。

我发现的解决方案对我有效:首先,运行以下命令以查找您身份的十六进制ID:

$ security find-identity -v
1) A048017A43F8C9C993128B0101B81CD07049601E "lldb_codesign"
...
然后,您可以使用该十六进制标识符进行签名:

codesign -s A048017A43F8C9C993128B0101B81CD07049601E /usr/local/bin/gdb
调试时我遇到的其他一些技巧:

  • 您必须给出二进制文件的完整路径(
    /usr/local/bin/gdb
    ,而不仅仅是
    gdb
    )。我想出于安全考虑,它不会在路径上显示
  • 如果二进制文件所在的目录不是用户所有的,则必须以root用户身份运行代码设计

我在Xcode 8.3.2中遇到过这种情况,因为我无意中得到了我的签名证书的副本@克里斯蒂娜的回答给了我线索
$security find identity-v
向我显示了两个具有相同哈希的条目。我通过删除列表中的第一个证书和该散列来修复它,通过:


$sudo security delete certificate-Z

今天在这里也有同样的问题。10.10.3 XCode 6.3您找到解决方案了吗?我最初在6.3中遇到问题,如上所述恢复到6.2,问题仍然存在。您是否检查了您的证书是否已过期?下面是一个相关的讨论,可能会帮助我们该讨论中的循环对我有效,但我必须首先复制我的.app,如果codesign失败,则在循环中,删除.app并将新版本复制到位,然后再次尝试进行代码设计。似乎代码设计不是原子性的(我认为这是一个单独的bug)…但现在你的应用程序的签名将在你的证书到期后立即失效。(但这实际上是一个很好的线索,说明了真正的问题是什么。可能它在时间戳服务器关闭时崩溃了?)如果连接到服务器时出现问题,它就会崩溃。对我来说,它崩溃是因为我在防火墙后面,防火墙阻止了我构建服务器上的所有互联网。这在Jenkins build Mac mini上对我有效,没有添加时间戳选项。我还需要清除现有的构建工件。我最近刚刚将其更新为MacOS Sierra和最新的XCode 8.3.2。我没有尝试过这个,但不知道升级后重新加载证书是否会有所帮助。