drfls28608
2018-09-04 14:48
浏览 273
已采纳

无法调试二进制文件-“无法启动进程:在二进制文件中找不到.debug_line节”

I am working with GoLand IDE and I have the following simple code:

package main

import (
    "fmt"
    "time"
)


func main() {
    start := time.Now()
    time.Sleep(2 * time.Second)
    elapsed := time.Since(start)
    fmt.Println("elapsed: %s", elapsed)
}

When I run it, it works fine and I see the output.
When I put breakpoint in one of the lines I received the following error:

GOROOT=/usr/local/go #gosetup  
GOPATH=/root/go #gosetup  
/usr/local/go/bin/go build -o /tmp/___go_build_mymain_go -gcflags "all=-N -l" /root/go/src/myproj/mymain.go #gosetup  
/home/myuser/Desktop/GoLand-2018.1.4/plugins/go/lib/dlv/linux/dlv --listen=localhost:35607 --headless=true --api-version=2 --backend=default exec /tmp/___go_build_mymain_go -- #gosetup  
could not launch process: could not find .debug_line section in binary  

Debugger finished with exit code 1  

I didn't find any information regarding this error.
I read about debugging in Go and it was mentioned to use -gcflags "all=-N -l" which is being used.

What can be the reason for this fail?

图片转代码服务由CSDN问答提供 功能建议

我正在使用GoLand IDE,并且具有以下简单代码:

  package main 
 
import(
“ fmt” 
“ time” 
)
 
 
func main(){
 start:= time.Now()
 time.Sleep(  2 * time.Second)
经过了:= time.Since(start)
 fmt.Println(“ elapsed:%s”,经过)
} 
   
 
 <  p>当我运行它时,它可以正常工作,并且看到输出。
将断点放在其中一行中时,收到以下错误:
  GOROOT  = / usr / local / go #gosetup 
GOPATH = / root / go #gosetup 
 / usr / local / go / bin / go build -o / tmp / ___ go_build_mymain_go -gcflags“ all = -N -l” / root /  go / src / myproj / mymain.go #gosetup 
 / home / myuser / Desktop / GoLand-2018.1.4 / plugins / go / lib / dlv / linux / dlv --listen = localhost:35607 --headless = true-  -api-version = 2 --backend = default exec / tmp / ___ go_build_mymain_go-#gosetup 
无法启动过程:找不到二进制文件中的.debug_line部分
 
调试器以退出代码1完成
   
 
 

我没有找到有关此错误的任何信息。
我阅读了有关Go中调试的信息,并提到使用 -gcflags“ all = -N -l“ 正在使用。

失败的原因可能是什么?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • dongza1708 2018-09-04 15:00
    已采纳

    It seems you are using an outdated version of GoLand, 2018.1.4. Upgrade to 2018.2.2 and the issue will disappear.

    点赞 打赏 评论

相关推荐