„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie vermeide ich, beim Debuggen von Go-Programmen in GoClipse in den Assembler-Code zu geraten?

Wie vermeide ich, beim Debuggen von Go-Programmen in GoClipse in den Assembler-Code zu geraten?

Veröffentlicht am 08.11.2024
Durchsuche:291

How to Avoid Stepping into Assembly Code while Debugging Go Programs in GoClipse?

Debuggen von Go-Programmen in GoClipse mit Assembler-Code

Beim Versuch, ein Go-Programm in GoClipse zu debuggen, stoßen Benutzer möglicherweise auf ein Problem mit dem Debugger Schritte durch Assembler-Code anstelle von Go-Code. Dies tritt trotz korrekter Installation von gdb zum Debuggen auf.

Wenn ein Haltepunkt gesetzt ist und das Programm über den Eclipse-Debugger ausgeführt wird, gibt es Assembler-Codedateien wie „rt0_darwin_amd64.s“ ein und konzentriert sich auf Zeilen wie „MOVQ $_rt0_go (SB), AX.“ Dieses Verhalten kann das Debuggen erschweren.

Um dieses Problem zu beheben, überprüfen Sie den Inhalt der Debug-Ansicht, wenn das Go-Programm stoppt. Wenn ein Stack-Trace angezeigt wird, der mit „main() at rt0_darwin_amd64.s“ beginnt, weist dies darauf hin, dass der Debugger bei einer in C geschriebenen internen Laufzeit-„main“-Funktion angehalten hat.

Dieses Verhalten wird von der ersten gesteuert Option in den Startkonfigurationsoptionen. Um das Problem zu beheben, setzen Sie die Option auf „main.main“, um bei der eigentlichen Go-Hauptfunktion anzuhalten, oder deaktivieren Sie einfach die Option.

Alternativ können Sie dies tun, wenn der Debugger bei der internen Laufzeitfunktion „main“ stoppt Klicken Sie auf „Ausführen/Fortsetzen“ (F8), um die Ausführung fortzusetzen. Dadurch können Sie den Go-Code schrittweise durchlaufen und wie erwartet debuggen.

Freigabeerklärung Dieser Artikel wird unter folgender Adresse abgedruckt: 1729692227 Bei Verstößen wenden Sie sich bitte an [email protected], um ihn zu löschen
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3