时间:2021-05-22
目标:在64位linux系统上编译出32位程序。
操作:
1.执行 go env 查看当前go环境配置
2.执行 export GOARCH=386 配置go输出系统平台为32位
3.go build 编译程序
4.使用file main 指令查看编译出的可执行程序是否为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)}以上为个人经验,希望能给大家一个参考,也希望大家多多支持。如有错误或未考虑完全的地方,望不吝赐教。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Golang支持交叉编译,在一个平台上生成另一个平台的可执行程序,最近使用了一下,非常好用,这里备忘一下。Mac下编译Linux和Windows64位可执行程序
安装环境deepin15.3X64(教程也适用于其他linux系统)LinuxDeepin正式版操作系统v15.1本地下载:32位64位安装下载地址:https
32位操作系统,基于x64的处理器的意思是处理器是64位的,操作系统是32位的,64位的处理器可以运行32位和64位的操作系统,但32位的处理器不能运行64位的
mysql-5.7.964位RPM集合包在Linux系统中的安装过程。因为我用的64位的CentOS7所以我下的是64位的集合包,如果你用的32位的Linux系
在64位操作系统中,有些程序会同时安装64位和32位,IE浏览器便是如此,有些时候某些插件不支持64位,我们只能开启32位版IE运行。 在IE7~IE9版