Macos Qt 5导致gatekeeper阻止我的应用程序

Macos Qt 5导致gatekeeper阻止我的应用程序,macos,qt,frameworks,Macos,Qt,Frameworks,我在Mac上的应用程序使用Qt5,由于苹果发布了10.9.5和10.10,我的应用程序被gatekeeper阻止。它报告“XXX无法打开,因为无法确认开发人员的身份”。经过一些研究,我发现qt5框架可以解释问题,例如QtCore、QtGui等。解决方案是重新组织这些框架的布局。我使用python脚本来完成这个过程,它在我的机器上运行良好。当我运行“spctl-a-t exec-vv MyApp.app”时,它报告已接受,但之前已拒绝 这里有一个来自苹果的链接来解释布局 但是当我创建图像(使用h

我在Mac上的应用程序使用Qt5,由于苹果发布了10.9.5和10.10,我的应用程序被gatekeeper阻止。它报告“XXX无法打开,因为无法确认开发人员的身份”。经过一些研究,我发现qt5框架可以解释问题,例如QtCore、QtGui等。解决方案是重新组织这些框架的布局。我使用python脚本来完成这个过程,它在我的机器上运行良好。当我运行“spctl-a-t exec-vv MyApp.app”时,它报告已接受,但之前已拒绝

这里有一个来自苹果的链接来解释布局

但是当我创建图像(使用hdiutil)并分发它时。它丢失了应用程序中的所有符号链接,这使得gatekeeper用相同的报告再次阻止它

有没有办法绕过这个问题?或者使用另一种方法创建图像,或者使用另一种方法解决Qt框架布局问题

提前谢谢


杰瑞终于找到了真正的问题所在

删除符号链接的不是hdiutil命令。这是我使用的python脚本,shutil.copytree。此复制树或任何其他复制函数都执行深度复制,这将替换指向对象的符号链接

最简单的方法或替代解决方案是使用shutil.move(如果您的情况可能的话)

谢谢, 杰里