ホームページ > バックエンド開発 > Golang > GoClipse でデバッグすると、Go コードではなくアセンブリ コードが表示されるのはなぜですか?

GoClipse でデバッグすると、Go コードではなくアセンブリ コードが表示されるのはなぜですか?

Mary-Kate Olsen
リリース: 2024-10-23 22:49:30
オリジナル
727 人が閲覧しました

Why Am I Seeing Assembly Code Instead of Go Code When Debugging with GoClipse?

GoClipse を使用した Go プログラムのデバッグ: Go コードではなくアセンブラー コードの問題

GoClipse を使用して Go プログラムをデバッグすると、次のような状況が発生することがあります。デバッガーは、Go プログラム行にブレークポイントが設定されている場合でも、Go コードではなくアセンブリ コードをステップ実行します。この問題は、必要な GNU デバッガー (gdb) がインストールされていない場合に発生する可能性があります。

これを解決するには、前述したように、HomeBrew を介して gdb をインストールする手順に従ってください。ただし、gdb のインストール後も同じ問題が発生する可能性があります。

デバッグ ビューの調査

この問題が発生した場合は、デバッグ ビューを確認してください。 「main」関数で始まり、macOS システムの場合は rt0_darwin_amd64.s (Windows システムの場合は rt0_windows_amd64.s) の行番号が続くスタック トレースが表示される場合、デバッガーが内部ランタイム「main」で自動的に停止したことを示します。

起動構成オプションの調整

この問題を解決するには、起動構成オプションに移動します。最初のオプションは、プログラムをこの内部「メイン」関数で停止するかどうかを制御します。これを「main.main」に変更して Go main 関数で停止することも、オプションのチェックを完全に解除してランタイムの「main」関数での自動停止を無効にすることもできます。

起動構成オプションを調整したら、アセンブリ コードをステップ実行せずに Go プログラムをデバッグできるはずです。デバッグを続行するには、[実行/再開] (F8) をクリックします。

以上がGoClipse でデバッグすると、Go コードではなくアセンブリ コードが表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート