decoding dwarf section info at offset 0x0: too short

前端 未结 4 1544
陌清茗
陌清茗 2020-12-11 01:59

I am using JetBrains GoLand and I am trying to debug my go file and I am getting the following error:

decoding dwarf section info at offset 0x0: too s

相关标签:
4条回答
  • 2020-12-11 02:29

    I would like to share my experience here too as it may be helpful for community, I made it works by doing the following:

    • Update Goland to 18.3
    • Also, in case if you have Mac, you should run xcode-select --install
    • In case if you had delv already installed inside GOPATH/bin, remove it and re-install it again by following instructions here
    0 讨论(0)
  • 2020-12-11 02:39

    GoLand ships with a bundled version of Delve. Update to 2018.2.2 and it should work. If you need to do remote debugging, then you need to update your Delve installation on/for the target machine as well (make sure you compile it with Go 1.11).

    Edit: There are two more possible cases where this issue can appear:

    • the application was compiled with all the debugging flags turned off and the additional debugging information stripped
    • the application uses the standard library "plugin" package, which is known to cause an issue in the Go compiler. This will be fixed in Go 1.12.
    0 讨论(0)
  • 2020-12-11 02:40

    After hours of effort, I was able to find the issue. It was due to Golang Plugin which is deprecated and was not compatible with IntelliJ IDEA 2018.2.2 (Ultimate Edition).

    I uninstalled the plugin and reinstall the IntelliJ. Hope this also helps to above solutions.

    0 讨论(0)
  • 2020-12-11 02:43

    For my Mac the problem is related to the dlv package as installed by Golang plugin.

    • Install delv and,
    • check the path of dlv as executed by IntelliJ (in the console).

    Go to this directory

    ($HOME//Library/Application Support/IntelliJIdea2017.3/intellij-go/lib/dlv/mac) 
    
    • and rename dlv to any other name. Get the right dlv executable by using

      which dlv (/usr/local/Cellar/go/1.11.1/libexec/bin/dlv for my computer) 
      
    • and add a symbolic link

      (ln -s /usr/local/Cellar/go/1.11.1/libexec/bin/dlv dlv).
      
    0 讨论(0)
提交回复
热议问题