Je crois que j'ai compris cela. J'ai été en cours d'exécution Xcode 4.6.3 sur OS X Mavericks, en vertu de l'impression que de construire des outils spécifiques ont été regroupés dans l'application Xcode.
Mais, il semble que codesign
est /usr/bin
. Si c'est mis en place par l'un des Xcode installateurs ou est livré avec une vanille d'installation du système, je ne suis pas sûr. Mais la lecture par le biais de l' man
page codesign
, j'ai trouvé cette chouette option:
--deep When signing a bundle, specifies that nested code content such as helpers, frameworks, and plug-ins, should be recursively signed
in turn. Beware that all signing options you specify will apply, in turn, to such nested content.
When verifying a bundle, specifies that any nested code content will be recursively verified as to its full content. By default,
verification of nested content is limited to a shallow investigation that may not detect changes to the nested code.
When displaying a signature, specifies that a list of directly nested code should be written to the display output. This lists only
code directly nested within the subject; anything nested indirectly will require recursive application of the codesign command.
Et puis j'ai trouvé ce post (https://alpha.app.net/isaiah/post/6774960) d'il y a deux semaines (~juin 2013), qui mentionne (quoique seconde main):
@ésaïe j'ai demandé à un gars dans les laboratoires à ce sujet. Il a dit codesign maintenant
nécessite intégré cadres à être signé séparément avant de les code
la signature de l'app bundle dans son ensemble.
De nouveau manuellement l'exécution de l' codesign
commande Xcode s'exécute normalement, tout en ajoutant l' --deep
drapeau à la fin, les signes correctement l'application.
Je ne suis pas encore sûr exactement ce ramifications de ce manuel de signature a, ou si je peux modifier le Xcode construire pour ajouter l' --deep
drapeau automatiquement, mais cela semble être le problème sous-jacent. (codesign
n'est plus automatiquement profondément signes que votre app bundle.)