我有一个dylib,为了使其能够在我的机器上运行,我不得不在xcode的目标设置中禁用库验证。不用付费的开发者帐户就可以进行签名以进行测试吗?有关如何执行此操作的任何链接或教程都将大有帮助。
取决于您如何获得图书馆。
使用Xcode构建
如果使用Xcode构建,则应该能够启用签名,并在项目的Team
窗格中告诉它使用None
Sign to Run Locally
和Signing and Capabilities
全部。
签署现有的dylib
如果您不是在Xcode中构建它,并且想要对以其他方式构建或检索的二进制文件进行签名,则将需要使用codesign
,这可能非常复杂。
理论上,您可以使用已被授权进行代码签名的任何证书来运行codesign,并且可以使用自签名证书来创建证书,但这是最大的麻烦,并且不一定能成功。
如果您已登录开发人员门户并允许Xcode为您管理签名标识,则Xcode应该自动创建“ Mac Developer”代码签名证书。
您可以使用以下方法验证您是否具有代码签名身份:
security find-identity -v -p codesigning
这将列出所有有效的代码签名身份。
[C0的签名是使用codesign命令的问题:
dylib
使用自签名代码签名证书
注意:不建议这样做,但是对我有用。
现在,当您运行上述codesign --force --timestamp --sign <name of certificate> <binary you want to sign>
命令列出代码签名证书时,应该会显示您的自签名证书。如果是这样,您很可能没有将Always Trust或证书类型设置为Code Signing
此时,您已经准备好执行代码签名命令,然后可以使用以下命令进行验证:
security