【问题标题】:Developer ID Code Signing working on one machine but not another开发人员 ID 代码签名在一台机器上工作,但在另一台机器上工作
【发布时间】:2013-06-17 17:25:37
【问题描述】:

我有一台 Mac Pro,我通常在其上构建并签署我的应用程序,以便在 Mac App Store 之外分发(即使不是应用程序商店应用程序,安装 Gatekeeper 的 Mountain Lion 机器也需要签署)。

我在终端中签署了应用程序,它在 Mac Pro 上运行良好,所以我去为 Mac Book Air 创建另一个开发者 ID 应用程序证书,成功创建了安装的证书,但我完全无法签名任何应用程序仍在播放中。我不断收到错误:

object file format unrecognized, invalid, or unsuitable

问题是我可以获取在任一机器上构建的 .app 文件并在 Mac Pro 上成功对其进行签名。如果我从任何一台机器上构建一个 .app 文件并尝试在 Mac Book Air 上构建,我会收到此错误。我没有收到关于证书的任何错误。

就在这里,我使用以下两行来签署应用程序(我将其复制到我桌面上的“应用程序”文件夹中):

cd ~/Desktop/App
codesign -f -v -s 'Developer ID Application: [company name]' '[appname].app'

我已经检查了钥匙串访问权限,并且证书在两台机器上的显示几乎相同。两台计算机都运行 10.8.3。我真的看不出阻止 MBA 签署应用程序的区别是什么。

感谢您的帮助!

【问题讨论】:

  • 四处搜索后发现您需要在 Xcode 的 Preferences Window > Downloads 部分手动安装命令行工具,以允许终端中的代码签名正常工作。显然,我在设置与 Gatekeeper 打交道时在 Mac Pro 上执行了此操作。看起来又是一个无用错误信息的案例!

标签: ios code-signing code-signing-certificate


【解决方案1】:

Mac Book Air 没有安装额外的命令行工具,这是导致问题的原因。我需要 Xcode 4.4(或更高版本)并转到 Preferences Window > Downloads 部分并从那里安装命令行工具以使代码签名正常工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-06-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多