2015-04-16 12 views
11

Ich konnte keine Definition für diesen Fehler in Bezug auf die Codesignierung finden. Ich bin wirklich ziemlich ratlos, was zu tun ist.Segmentierungsfehler: 11, wenn versucht wird, Codesign .app

Der Fehler tritt auf, wenn versucht wird diese Befehlszeile auszuführen:

codesign -s "Developer ID Application: Name (ID)" -fv --deep Application.app/ 

System:

XCode 6.2 auf Yosemite 10.10.3

ich XCode neu installiert habe, immer noch ohne Erfolg. Dies ist für eine Desktop-Anwendung.

Entschuldigt, wenn dies eine dumme Frage!

+1

das gleiche Problem haben, heute hier. 10.10.3 XCode 6.3 – Gubatron

+0

Haben Sie eine Lösung gefunden? Ich habe das Problem anfänglich mit 6.3 bekommen, wieder auf 6.2 wie oben und das Problem ist immer noch da. – SRG3006

+0

Haben Sie überprüft, ob Ihr Zertifikat abgelaufen ist? – Gubatron

Antwort

3

vorbei --timestamp=none scheint der Absturz weggehen zu machen.

+5

... außer jetzt bricht die Signatur Ihrer App ab, sobald Ihr Zertifikat abläuft. (Aber das ist eigentlich ein guter Anhaltspunkt dafür, was das eigentliche Problem ist. Vielleicht stürzt es ab, wenn der Timestamp-Server ausgefallen ist?) – Trejkaz

13

Eine Lösung fand ich on the Apple forum für mich gearbeitet: Zunächst führen Sie den folgenden Befehl, um Ihre Identität hex-ID zu finden:

$ security find-identity -v 
1) A048017A43F8C9C993128B0101B81CD07049601E "lldb_codesign" 
... 

Dann können Sie diese hex Bezeichner verwenden, zu unterschreiben:

codesign -s A048017A43F8C9C993128B0101B81CD07049601E /usr/local/bin/gdb 

Einige andere Tipps, die ich beim Debuggen dieses stieß:

  • Sie müssen den vollständigen Pfad th geben e binär (/usr/local/bin/gdb, nicht nur gdb). Es wird nicht auf den PATH schauen, vermute ich aus Sicherheitsgründen.
  • Sie müssen das Codesign als root ausführen, wenn das Verzeichnis, in dem sich Ihre Binärdatei befindet, nicht benutzereigen ist.
+1

Das funktionierte für mich auf einem Jenkins-Mac mini, ohne die Zeitstempel-Option hinzuzufügen. Ich musste auch meine vorhandenen Build-Artefakte entfernen. Ich hatte dies kürzlich auf MacOS Sierra und den neuesten XCode 8.3.2 aktualisiert. Ich habe das nicht ausprobiert, frage mich aber, ob es auch hilfreich ist, das Zertifikat nach dem Upgrade neu zu laden. –

Verwandte Themen