需要为 32 位架构编译 uint64 的 Golang 程序
Golang program requiring uint64 compiling for 32 bit architecture
我目前正在开发一个程序,我需要存储大整数值,大到它们不适合 uint32
。仅 int64
或 uint64
.
我刚刚意识到我将用于此项目的 Raspberry Pi Zero v1.3
具有 Broadcom BCM2835 processor
,我认为它是 32 bit
架构处理器。
It contains an ARM1176JZFS (ARM11 using an ARMv6-architecture core) with floating point, running at 1GHz
如何确保我的程序在此 32 位体系结构上正常运行?我必须做些不同的事情吗?或者当我交叉编译它时,编译器是否能够毫无问题地处理它:env GOOS=linux GOARCH=arm GOARM=6 go build
?
首先声明:我不是写32位代码的,所以我说的可能不完整。
根据语言规范,依赖于体系结构的类型只有 int、uint 和 uintptr。这意味着,您必须返回并检查声明为这些类型之一的每条数据和函数参数。您还必须检查作为接口{}传递的任何未类型化数字文字(声明的常量和文字值),因为它们也将作为 int 传递。
我目前正在开发一个程序,我需要存储大整数值,大到它们不适合 uint32
。仅 int64
或 uint64
.
我刚刚意识到我将用于此项目的 Raspberry Pi Zero v1.3
具有 Broadcom BCM2835 processor
,我认为它是 32 bit
架构处理器。
It contains an ARM1176JZFS (ARM11 using an ARMv6-architecture core) with floating point, running at 1GHz
如何确保我的程序在此 32 位体系结构上正常运行?我必须做些不同的事情吗?或者当我交叉编译它时,编译器是否能够毫无问题地处理它:env GOOS=linux GOARCH=arm GOARM=6 go build
?
首先声明:我不是写32位代码的,所以我说的可能不完整。
根据语言规范,依赖于体系结构的类型只有 int、uint 和 uintptr。这意味着,您必须返回并检查声明为这些类型之一的每条数据和函数参数。您还必须检查作为接口{}传递的任何未类型化数字文字(声明的常量和文字值),因为它们也将作为 int 传递。