15

我花了 99 美元获得了 Apple 的开发者许可证。安装 Xcode 4.3。转到 Organizer 和“Provisioning Profiles”并刷新以下载我的代码签名证书。检查我的钥匙串访问并确认我有“3rd Party Mac Developer ”、“Developer ID ”和“Mac Developer *”证书。

此时,来自苹果的文档提到了提取您的项目文件。我正在使用 Wineskin 来打包我的 Windows 应用程序,所以我没有 Xcode 项目。我有一个 .app 文件生成了我的 Wineskin。我想对 Wineskin 为我制作的 .app 文件进行代码设计。

我试过: codesign -s "证书名称" /path/to/my.app

我从我的钥匙串访问中尝试了所有可能的证书名称,其中包含我的名字和“应用程序”一词。

每次我收到错误“/path/to/my.app:目标文件格式无法识别、无效或不合适”

关于如何克服这个错误的任何想法?我什至在尝试正确的命令吗?还是我应该走不同的路?

4

3 回答 3

23

总结对我的问题的评论,以下是我为 Gatekeeper 签署我的 .app 文件时运行的命令:

export CODESIGN_ALLOCATE="/Applications/Xcode.app/Contents/Developer/usr/bin/codesign_allocate"
codesign --force --sign "Developer ID Application: <my name>" /path/to/my.app

谢谢,戈登戴维森和 JWWalker!

(编辑)如果失败,我意识到需要从 XCode 中安装“命令行工具”。

编辑: 验证

$ codesign -dv --verbose=4 my.app

在 Apple ID 帐户中确保您拥有几种类型的证书?

在此处输入图像描述 在此处输入图像描述 在此处输入图像描述

于 2012-11-05T15:50:53.607 回答
1

确保您的钥匙串中有有效的开发人员证书和私钥。如果您对它有一些问题,应该通过 developer.apple.com 撤销证书并从头开始生成(XCode > Accounts > Manage Certificates)。

然后你可以使用codesign

codesign --force --deep --sign "Apple Development: FirstName LastName (XXXXXXXXXX)" /Applications/ApplicationName.app
于 2020-12-25T12:14:38.737 回答
0

在使用 codesign 命令之前

  1. 从https://developer.apple.com/downloads/index.action部分安装 Xcode 命令行工具。(您应该有一个开发者帐户来下载附加工具。)

  2. 请检查 Payload 文件夹中的任何隐藏文件,如 (.DStore),如果有,请将其删除

    • 使用cd命令通过终端导航到 Payload 文件夹
    • 在终端上输入 ls- 命令
    • 如果有任何隐藏文件分开,请通过 rm -f .DStore 将其删除

这个解决方案对我有用,所以请试一试....

于 2014-04-02T14:55:54.013 回答