使用golang怎么在64位的linux系统中编译一个32位的程序-创新互联

这篇文章给大家介绍使用golang怎么在64位的linux系统中编译一个32位的程序,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

在进贤等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站设计、成都网站制作 网站设计制作定制网站设计,公司网站建设,企业网站建设,成都品牌网站建设,成都营销网站建设,外贸营销网站建设,进贤网站建设费用合理。

目标:在64位linux系统上编译出32位程序。

操作:

1.执行 go env 查看当前go环境配置

2.执行 export GOARCH=386 配置go输出系统平台为32位

3.go build 编译程序

4.使用file main 指令查看编译出的可执行程序是否为32位

实践图片:

使用golang怎么在64位的linux系统中编译一个32位的程序

使用golang怎么在64位的linux系统中编译一个32位的程序

补充:golang float32/64与[]byte互转

网络协议开发中经常需要将int、float、bool等转为二进制数据,float32、64 与[]byte处理:

import (
  "encoding/binary"
  "math"
)
 
func Float32ToByte(float float32) []byte {
  bits := math.Float32bits(float)
  bytes := make([]byte, 4)
  binary.LittleEndian.PutUint32(bytes, bits) 
  return bytes
}
 
func ByteToFloat32(bytes []byte) float32 {
  bits := binary.LittleEndian.Uint32(bytes) 
  return math.Float32frombits(bits)
}
 
func Float64ToByte(float float64) []byte {
  bits := math.Float64bits(float)
  bytes := make([]byte, 8)
  binary.LittleEndian.PutUint64(bytes, bits) 
  return bytes
}
 
func ByteToFloat64(bytes []byte) float64 {
  bits := binary.LittleEndian.Uint64(bytes) 
  return math.Float64frombits(bits)
}

关于使用golang怎么在64位的linux系统中编译一个32位的程序就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。


当前文章:使用golang怎么在64位的linux系统中编译一个32位的程序-创新互联
标题来源:http://hbruida.cn/article/jdsci.html