登录
首页 >  Golang >  Go问答

如何为当前操作系统构建go包并将其输出到指定文件夹?

来源:stackoverflow

时间:2024-04-14 14:45:33 446浏览 收藏

小伙伴们对Golang编程感兴趣吗?是否正在学习相关知识点?如果是,那么本文《如何为当前操作系统构建go包并将其输出到指定文件夹?》,就很适合你,本篇文章讲解的知识点主要包括。在之后的文章中也会多多分享相关知识点,希望对大家的知识积累有所帮助!

问题内容

当我运行 go build main.go 时,编译器将在同一文件夹中输出当前操作系统的二进制文件。在这种情况下,我将获得适用于 osx 或 linux 的 main.exemain

如果我指定输出,它将在 windows 计算机上忽略文件扩展名。

go build -o ./bin/myproject main.go

由于缺少文件扩展名,如果不重命名输出的二进制文件,则无法在 windows 上运行它。

如何构建一个 go 项目,指定输出文件夹并获取适合另一端操作系统的二进制文件?


解决方案


您可以在脚本中处理 .exe 扩展的逻辑。像这样的东西:

#!/usr/bin/env bash

output="./bin/myproject"


if [ -n "$goos" ] && [ "$goos" = "windows" ]; then
    output+='.exe'
fi

go build -o $output main.go

如果你将其命名为build.sh。您可以调用它:

bash build.sh # for using the `GOOS` defined in your environment
GOOS=windows bash build.sh # for building windows binaries (with `.exe` extension)

今天带大家了解了的相关知识,希望对你有所帮助;关于Golang的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>