首页主机资讯Ubuntu Golang打包生成的文件在哪里

Ubuntu Golang打包生成的文件在哪里

时间2025-11-17 17:24:03发布访客分类主机资讯浏览909
导读:默认位置 使用 go build 在 Ubuntu 上编译时,若未指定输出路径,可执行文件会生成在当前工作目录,文件名默认与包目录名或你执行的包路径一致(例如项目根目录执行 go build,则生成与项目目录同名的二进制)。使用 go i...

默认位置

  • 使用 go build 在 Ubuntu 上编译时,若未指定输出路径,可执行文件会生成在当前工作目录,文件名默认与包目录名或你执行的包路径一致(例如项目根目录执行 go build,则生成与项目目录同名的二进制)。使用 go install 时,二进制会被安装到 $GOPATH/bin(若设置了 GOBIN,则安装到 $GOBIN)。

常见输出位置对照

命令或用法 生成位置 示例
go build(无 -o) 当前工作目录 在 /home/user/myapp 执行后生成 /home/user/myapp
go build -o < 路径/文件名> 你指定的路径 go build -o bin/myapp 生成项目根目录下的 bin/myapp
go install $GOPATH/bin 或 $GOBIN 若 GOPATH=$HOME/go,则生成 $HOME/go/bin/
脚本或 Makefile 自定义 脚本中 -o 指定的目录 例如 Makefile 中 OUTPUT_NAME=myapp,BUILD_TARGET=$(PROJECT_PATH)/bin/$(OUTPUT_NAME) 则生成项目根目录的 bin/myapp
以上行为由 -o 参数与安装规则决定,脚本/Makefile只是把路径固化。

快速定位与验证

  • 查看当前工作目录:运行 pwd;构建后在当前目录用 ls -l 查看是否出现可执行文件。
  • 查找 go 安装与二进制目录:执行 go env GOPATH(得到 $GOPATH),检查 $GOPATH/bin 是否存在你的二进制。
  • 全局搜索刚生成的二进制名:例如 sudo find / -type f -name “myapp” -executable 2> /dev/null(将 myapp 替换为你的实际二进制名)。

常用命令示例

  • 在当前目录生成二进制:go build
  • 指定输出目录与名称:go build -o bin/myapp
  • 安装到 GOPATH/bin:go install
  • 交叉编译 Linux amd64 并输出到指定目录:CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o dist/myapp
  • 使用 Makefile 输出到项目 bin 目录:在 Makefile 中设定 BUILD_TARGET=./bin/myapp 并执行 make build。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Ubuntu Golang打包生成的文件在哪里
本文地址: https://pptw.com/jishu/749116.html
Ubuntu Golang打包时遇到依赖问题怎么办 如何提高Ubuntu Golang打包速度

游客 回复需填写必要信息