登录
首页 >  Golang >  Go问答

Golang 二进制文件是可移植的吗?

来源:Golang技术栈

时间:2023-05-01 06:51:33 226浏览 收藏

知识点掌握了,还需要不断练习才能熟练运用。下面golang学习网给大家带来一个Golang开发实战,手把手教大家学习《Golang 二进制文件是可移植的吗?》,在实现功能的过程中也带大家重新温习相关知识点,温故而知新,回头看看说不定又有不一样的感悟!

问题内容

假设我主要是 Linux 用户,但我正在用 Go 开发一个我想成为跨平台的应用程序。我四处搜索,但似乎找不到信息来解决以下问题:

  1. 如果我go install在我的 amd64 Ubuntu 系统上使用二进制文件,它是否也适用于 其他人的 64 位 Ubuntu/Debian 系统?
  2. 如何使用go install构建一个 x86_64 二进制文件,该二进制文件也将在 32 位 Debianlikes 上开箱即用?
  3. 如果我必须使用 Windows 制作将在 Windows 上运行的二进制文件,我如何才能确保即使我的 Windows 系统是 64 位,可执行文件也将针对 x86_64 构建?

我的问题实际上归结为“go 的链接器/编译器的静态/便携性如何?”

正确答案

  1. 是的,它会; 基本上所有为 64 位 Linux 编译的二进制文件都是如此,而不仅仅是用 Go 编写的那些(Go 不依赖的共享库除外)
  2. 您可以在构建之前设置GOOSGOARCH环境变量:(GOOS=windows GOARCH=386 go buildgo install其他)等
  3. 默认情况下,将为您正在运行的系统构建二进制文件,但这不是必需的 - 请参阅 2

理论要掌握,实操不能落!以上关于《Golang 二进制文件是可移植的吗?》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!

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