web-dev-qa-db-ja.com

オフセット0x0でのドワーフセクション情報のデコード:短すぎます

JetBrains GoLandを使用していますが、goファイルをデバッグしようとしていますが、次のエラーが表示されます。

オフセット0x0でのドワーフセクション情報のデコード:短すぎます

ここでStackOverflowで答えを見つけようとしましたが、残念ながら、解決策はありませんでした。

9
Nir Berko

GoLandには、バンドル版のDelveが付属しています。 2018.2.2にアップデートすると、動作するはずです。リモートデバッグを行う必要がある場合は、ターゲットマシンのDelveインストールも更新する必要があります(Go 1.11でコンパイルしてください)。

編集:この問題が表示される可能性のあるさらに2つのケースがあります。

  • アプリケーションはすべてのデバッグフラグをオフにしてコンパイルされ、追加のデバッグ情報は削除されました。
  • アプリケーションは、Goライブラリで問題を引き起こすことが知られている標準ライブラリ「プラグイン」パッケージを使用します。これはGo 1.12で修正される予定です。
10
dlsniper

コミュニティにとって役立つかもしれないので、ここでも私の経験を共有したいと思います。

  • Golandを18.3に更新します
  • また、Macを使用している場合は、xcode-select --installを実行する必要があります
  • delvGOPATH/bin内にすでにインストールされている場合は、それを削除して、再インストールします here
1

私のMacの問題は、Golangプラグインによってインストールされたdlvパッケージに関連しています。

  • インストール delv および、
  • (コンソールで)IntelliJによって実行されるdlvのパスを確認します。

このディレクトリに移動します

($HOME//Library/Application Support/IntelliJIdea2017.3/intellij-go/lib/dlv/mac) 
  • dlvの名前を他の名前に変更します。を使用して適切なdlv実行可能ファイルを取得します

    which dlv (/usr/local/Cellar/go/1.11.1/libexec/bin/dlv for my computer) 
    
  • シンボリックリンクを追加します

    (ln -s /usr/local/Cellar/go/1.11.1/libexec/bin/dlv dlv).
    
0

数時間の努力の後、私は問題を見つけることができました。これは、非推奨であり、IntelliJ IDEA 2018.2.2(Ultimate Edition)と互換性がないGolangプラグインが原因でした。

プラグインをアンインストールして、IntelliJを再インストールしました。これが上記の解決策にも役立つことを願っています。

0
prashant