在搭建调试环境前,需先确保CentOS系统已安装Golang。以下是两种常用安装方式:
适用于CentOS 7及以上版本,操作简便:
# 更新系统包列表
sudo yum update -y
# 安装Golang(CentOS 8+用dnf)
sudo yum install golang -y
若需使用最新版本,可通过官方下载二进制包:
# 下载最新Go安装包(替换为当前最新版本,如go1.21.0)
wget https://golang.org/dl/go1.21.0.linux-amd64.tar.gz
# 解压至/usr/local目录
sudo tar -C /usr/local -xzf go1.21.0.linux-amd64.tar.gz
编辑~/.bashrc(当前用户)或/etc/profile(全局),添加以下内容:
export GOROOT=/usr/local/go  # Go安装目录
export GOPATH=$HOME/go      # 工作目录(存放代码、依赖)
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin  # 添加Go命令到PATH
export GO111MODULE=on       # 启用Go Modules(推荐)
使配置生效:
source ~/.bashrc  # 或source /etc/profile
运行以下命令,若输出版本号则安装成功:
go version
Delve(dlv)是Go语言的原生调试工具,支持断点、单步执行、变量查看等功能。
使用Go命令安装最新版本:
go install github.com/go-delve/delve/cmd/dlv@latest
检查Delve版本,确认安装成功:
dlv version
为了让Delve能正确调试,需编译时保留调试符号(默认已包含,无需额外参数):
# 进入项目目录
cd /path/to/your/project
# 编译程序(生成带调试信息的二进制文件)
go build -o myapp
启动调试会话:
dlv exec ./myapp
常用命令:
break main.main:在main函数设置断点continue(或c):继续执行程序至下一个断点next(或n):执行下一行(不进入函数)step(或s):执行下一行(进入函数)print variable(或p variable):打印变量值quit(或q):退出调试若使用VS Code,可配置launch.json实现可视化调试:
golang.go){
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Launch with Delve",
            "type": "go",
            "request": "launch",
            "mode": "debug",
            "program": "${workspaceFolder}",
            "env": {},
            "args": []
        }
    ]
}
若需在本地调试远程CentOS服务器上的程序,需通过Delve的远程调试功能:
# 在程序目录下执行(--listen指定端口,--headless无前端,--api-version兼容)
dlv --listen=:2345 --headless=true --api-version=2 --accept-multiclient exec ./myapp
以VS Code为例:
launch.json,添加“Remote Attach”配置:{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Attach to Remote",
            "type": "go",
            "request": "attach",
            "mode": "remote",
            "remotePath": "${workspaceFolder}",
            "port": 2345,
            "host": "your_server_ip"
        }
    ]
}
go get -u github.com/go-delve/delve/cmd/dlv)-gcflags="-N -l"禁用优化(如go build -gcflags="-N -l" -o myapp)go install golang.org/x/tools/gopls@latest安装语言服务器通过以上步骤,即可在CentOS上完成Golang调试环境的搭建,并通过Delve或VS Code实现本地/远程调试。