我试图在osx mavericks 10.9.5上使用格式v2对应用程序包进行编码。在之前的测试中,10.9.5(13F12)的签名一切顺利,所有框架都可以无错误地签名。现在,在13F34,框架无法再签名了。当我尝试用第一个框架签名时:
codesign -f -v -s "Developer ID Application: MY AG" "My.app/Contents/Frameworks/4DJavaScript.framework"
然后发生错误:
My.app/Contents/Frameworks/4DJavaScript.framework: bundle format is ambiguous (could be app or framework)
当我尝试编写签名框架的唯一版本(A)时,签名成功,但在签署主应用程序时,框架上的错误重新出现。在查看框架的info.plist文件时,(在我看来)是类型集的正确条目:
Bundle OS Type code FMWK
有关如何在10.9.5-13F34上正确编码签名框架的任何建议? 谢谢,彼得
在对这个问题发表赏金之后,我立即想出来了。直接签署框架的当前版本可以解决问题:
codesign -f -v -s "Developer ID Application: My Dev ID" MyFramework.framework/Versions/Current
你的回答对我没用,所以我发帖了。
如果您之前使用cp -r
命令复制了框架,则会出现此问题。使用cp -a
这个问题不会出现。这种情况正在发生,因为在这两个选项中解析符号链接的方式不同。
我使用的是电子打包器,需要使用--no-deref-symlinks标志和bam为我工作