2

go build$GOPATH我的拱形流浪者盒子里跑。
但它打印出来

 runtime: panic before malloc heap initialized
 fatal error: runtime: cannot allocate heap metadata

而且盒子是3.10.9-1-ARCH x86_64,内存242M。

为什么我不能在盒子里构建 go 文件?

提前致谢。

4

1 回答 1

2

看起来这是由于没有足够的虚拟内存造成的

$ ulimit -v 242000
$ go build prog.go
runtime: panic before malloc heap initialized
fatal error: runtime: cannot allocate heap metadata

64 位 go 需要大量虚拟内存空间,但不一定需要那么多真实内存

您可以通过为容器分配更多内存来解决此问题。

您也可以使用/proc/sys/vm/overcommit_memory.

您也可以尝试将交换分配给容器(如果可能)。

于 2013-08-31T22:34:50.633 回答