Beenden Sie die Warnung "Der Zugriff auf Entwicklertools muss die Kontrolle über einen anderen Prozess übernehmen, damit das Debuggen fortgesetzt werden kann"

124

Ich habe kürzlich ein Upgrade auf 10.7.3 durchgeführt. Wenn ich nach dem Anmelden zum ersten Mal versuche, mein iOS-Projekt im Simulator zu debuggen, werden die folgenden zwei Warnungen angezeigt:

Entwicklertools Access muss die Kontrolle über einen anderen Prozess übernehmen, damit das Debuggen fortgesetzt werden kann.  Geben Sie Ihr Passwort ein, um dies zuzulassen.

gdb-i386-apple-darwin muss die Kontrolle über einen anderen Prozess übernehmen, damit das Debuggen fortgesetzt werden kann.  Geben Sie Ihr Passwort ein, um dies zuzulassen.

Mein Benutzer ist ein Administrator. Ich habe diese Warnungen noch nie gesehen. Wie bringe ich sie dazu aufzuhören?

BEARBEITEN

Ich habe überprüft, ob ich Mitglied der _developerGruppe bin id -a.

Heidegrenzen
quelle
3
Ich glaube, Sie müssen sich der _developerGruppe wie folgt hinzufügen : stackoverflow.com/questions/1837889/…, aber wenn Sie bereits Teil der _developerGruppe sind (so wie ich), bin ich mir nicht sicher, was sich geändert hat. Ich weiß, dass sich die /etc/authorizationDatei in 10.7.3 geändert hat, und einige Tests zeigen, dass ich einige der Eingabeaufforderungen entfernen kann, indem ich sie so bearbeite, dass sie immer allowdebuggt, aber mit Standardregeln scheint sie den _developerGruppentest nicht zu bestehen. :( Ich notiere, was ich gefunden habe, damit jemand anderes mehr Details ausgraben und mehr Sinn daraus machen kann, was kaputt
gegangen ist
3
lahm, dass dies geschlossen war.
Walross die Katze
Ich bin mir nicht sicher, warum dies zu lokalisiert war. Es ist ein Duplikat der Frage (mit Antwort), die hier zu finden ist: stackoverflow.com/a/11416025/2063546
Ian
Dies wurde zuerst gefragt. Das andere ist das Duplikat.
Heath Borders

Antworten:

199

Dafür gibt es eine viel einfachere Lösung. Führen Sie den folgenden Befehl aus:

sudo /usr/sbin/DevToolsSecurity --enable
Kenster
quelle
Danke dir! Das ist toll. Die Manpage für DevToolsSecurityerklärt genau, was los ist.
Zmccord
12
Hat für mich funktioniert, aber warum zum Teufel hat Apple diese Barriere hinzugefügt? Sie führen ein Upgrade von einer funktionierenden Version von XCode durch und müssen sofort ihre seltsamen Fehlermeldungen googeln, um herauszufinden, wie Sie XCode weiterhin verwenden können. Schrecklicher Service.
Mike Gledhill
Arbeitete für mich wie ein Zauber. Vielen Dank!
fmquaglia
12
Hat auch bei mir nicht funktioniert:Developer mode is already enabled.
Yar
Dies funktionierte für mich mit Xcode 8 auf einem iMac, auf dem ein TeamCity-Agent unter Mac OS Sierra ausgeführt wird.
Ben Thomas
18

Entwicklungsmodus aktivieren: Führen Sie im Terminal Folgendes aus: DevToolsSecurity -enable

Omxian
quelle
Durch einfaches Ausführen des Befehls 'DevToolsSecurity' wird dies standardmäßig aktiviert. Das Bestehen eines Argumentes ist nicht erforderlich
Vinayak,
Funktioniert nicht mit Eclipse CDT mit GDB-Debugger. Developer mode is already enabled.
Danijel
12

Laut Zev Eisenbergs Antwort funktionierte die Neuinstallation von Xcode 4.2.1. Es ist jedoch möglicherweise einfacher, die /etc/authorizationDatei mit dem folgenden Unterschied zu patchen .

        <key>system.privilege.taskport.debug</key> 
        <dict>
            <key>allow-root</key>
            <false/>
            <key>class</key>
-           <string>user</string>
+           <string>rule</string>
            <key>comment</key>
            <string>For use by Apple.  WARNING: administrators are advised
             not to modify this right.</string>
            <key>default-button</key>
            <dict>
            ...
            </dict>
            <key>default-prompt</key>
            <dict>
            ...
            </dict>
-           <key>group</key>
-           <string>_developer</string>
            <key>shared</key>
            <true/>
-           <key>timeout</key>
-           <integer>36000</integer>
+           <key>k-of-n</key>
+           <integer>1</integer>
+           <key>rule</key>
+           <array>
+               <string>is-admin</string>
+               <string>is-developer</string>
+               <string>authenticate-developer</string>
+           </array>
        </dict>
Heidegrenzen
quelle
1
Ich hatte das Gleiche getan wie oben. Das Problem ist jetzt, dass ich kein Internet-WLAN bekommen kann. Ich bin mir nicht sicher, wie das passiert.
Nareshkumar
1
Ich habe DevSecurityTools ausprobiert und mich der _developer-Gruppe und diesen Änderungen hinzugefügt. Ich werde immer noch aufgefordert, Zugriff zu gewähren. Bisher konnte ich nichts finden, was die Eingabeaufforderung entfernt.
Drekka
1
Das Ändern von system.privilege.taskport durch Ausführen führte dazu, security authorizationdb write system.privilege.taskport allowdass mein Passwort zum Verschwinden aufgefordert wurde
Jin
9

Die Neuinstallation von Xcode 4.2.1 nach dem Upgrade auf 10.7.3 scheint das Problem für mich behoben zu haben.

Zev Eisenberg
quelle
Wir müssen dies noch einmal tun, wenn entweder Mac OS 10.8 oder iOS 5.1 gestartet wird. Es heißt, sie machen die Xcode-App zu einer tatsächlichen .app, um die Aktualisierung über den App Store zu vereinfachen.
Ivan Karpan
Xcode 4.3 wird bereits auf diese Weise ausgeliefert. Ich habe dieses Passwortproblem seit der Installation nicht mehr gehabt.
Zev Eisenberg
9

Ich habe die Regel für geändert system.privilege.taskportund die Warnung wird nicht mehr angezeigt.

  1. Öffnen Sie die Datei /etc/authorization.
  2. Finde die Regel system.privilege.taskport. <key>class</key>Wechseln Sie unter der Zeile <string>rule</string>zu<string>allow</string>
Emily
quelle
Ein Diff zu posten ist etwas schöner.
Heath Borders
Ich habe alle anderen Vorschläge ausprobiert und dies ist der einzige, der funktioniert hat. Vielen Dank.
Drekka
Dies könnte funktionieren, aber es könnte auch eine Sicherheitslücke in Ihrer Sandbox öffnen. Ich bin ein bisschen vorsichtig.
n13
Vielen Dank! Aber / etc / authorisation ist auf den Außenseitern veraltet. Wissen Sie, was ich jetzt verwenden soll?
Slabko
1
Wie ich oben kommentiert habe, funktioniert es auch durch Ausführen security authorizationdb write system.privilege.taskport allowin der Befehlszeile.
Jin
5

Ich hatte das gleiche Problem mit meinem Mac 10.12.5 & Xcode9 Führen Sie diesen Befehl aus:

sudo security authorizationdb write system.privilege.taskport allow 

Geben Sie dann Ihr Passwort ein. Überprüfen Sie, ob Sie weiterhin dazu aufgefordert werden. Viel Glück..

Aks
quelle
Dies half bei Eclipse CDT. Vielen Dank.
Danijel
0

In der Datei / etc / authorisation wurde etwas geändert. Ich habe einen Lion ohne Version 10.7.3 und er hat den folgenden Code

Zeilen 5807-5814

    <key>k-of-n</key>
    <integer>1</integer>
    <key>rule</key>
    <array>
        <string>is-admin</string>
        <string>is-developer</string>
        <string>authenticate-developer</string>
    </array>

Nach dem Update enthält die Datei viele Änderungen aufgrund der unterstützten neuen Sprache, aber die Zeilen, die der Debugging-Autorisierung entsprechen, unterscheiden sich von den oben in gezeigten Zeilen

Zeilen 7675-7676

    <key>group</key>
    <string>_developer</string>

Ich kann diese Unterschiede nicht auf meine 10.7.3 Lion-Installation anwenden, da es sich um eine Produktionsmaschine handelt und ich nicht riskieren kann, sie zu beschädigen

Ich habe alle notwendigen Erlaubnis, wie aus dem Befehl hervorgeht id -a

uid=501(dave) gid=20(staff) groups=20(staff),
401(com.apple.access_screensharing),
402(com.apple.sharepoint.group.1),
12(everyone),
33(_appstore),
61(localaccounts),
79(_appserverusr),
80(admin),
81(_appserveradm),
98(_lpadmin),
100(_lpoperator),
204(_developer)
dafi
quelle
0

Ich habe gerade das Debuggen in (Bearbeitungsschema) deaktiviert -> Deaktivieren Sie die ausführbare Debug-Datei. Aber ich mache auch mein gesamtes Debugging auf einer anderen Konsole. Wenn Sie also den Debugger entwickeln und benötigen, hilft das nichts. Ich habe dieses Problem nur mit einer alten Version von Xcode 8.2.1, da ich den Code auf einem alten Mac mit El Capitan ausführe.

Neuere Mac- und Xcode-Version 10 scheint dieses Problem nicht zu haben.

Tim Johnsen
quelle
-3

Kein Code erforderlich. xcode muss nicht neu installiert werden. Führen Sie die folgenden Schritte aus:

1. Xcode schließen.

2. Öffnen Sie den Schlüsselbundzugriff.

3. Doppelklicken Sie auf Ihren Schlüsselbund (das Schlüsselsymbol, das aus keychain.p12 erstellt wird).

4.Zum Zugriff auf das Bedienfeld gehen (Name möglicherweise nicht richtig)

5. Aktivieren Sie alle App-Zugriff darauf.

6. speichern.

7. Führen Sie Ihr Xcode-Projekt aus.

8. es funktioniert gut.

zszen
quelle