2014-11-05 2 views
2

Я использую Qt 5 для своего приложения на Mac, а поскольку Apple выпустила 10.9.5 и 10.10, мое приложение блокируется привратником. В нем сообщается, что «XXX нельзя открыть, потому что идентификатор разработчика не может быть подтвержден». После некоторых исследований я нашел this, что объясняет проблему картой Qt 5, например QtCore, QtGui и т. Д. Решение реорганизует компоновку этих фреймворков. Я использую скрипт python для выполнения этого процесса, и все это хорошо работает на моей машине. Когда я запускаю «spctl -a -t exec -vv MyApp.app», он сообщает, что это было отклонено ранее.Qt 5 вызывает блокировку привратника моего приложения

Вот ссылка от Apple, чтобы рассказать о макете.

https://developer.apple.com/library/mac/documentation/MacOSX/Conceptual/BPFrameworks/Concepts/FrameworkAnatomy.html

Но когда я создаю образ (используя hdiutil) и распространять его. Он теряет все символические ссылки в приложении, что заставляет гейткипер блокировать его снова с тем же отчетом.

Есть ли способ обойти это? Или используйте другой способ создания изображения или другой способ решения проблемы с раскладкой фрейма Qt.

Спасибо в продвижении.

Jerry

ответ

0

И наконец, выясните, в чем действительно проблема.

Это не команда hdiutil, которая удаляет символические ссылки. Это сценарий python, который я использовал, shutil.copytree. Это дерево копий или любые другие функции копирования делают глубокую копию, которая заменяет символическую ссылку на объект, на который указывает.

Самый простой способ или альтернативное решение - использовать shutil.move, если это возможно в вашем случае.

Thanks, Jerry