我正try 在沙箱环境中使用Go编译器,但如果没有共享的构建缓存目录,编译速度会非常慢,因为每次都会编译引用的标准库.我希望避免共享构建缓存,因为我希望保持编译隔离.我问了https://github.com/golang/go/issues/64721中的Golang团队这个问题,他们建议预编译并分发标准库,但我不知道怎么做.

我试了GOBIN=/tmp/go-std-lib go build std次,但不起作用.

推荐答案

默认情况下,标准库不会预编译以保存分发大小.设置环境变量GODEBUG=installgoroot=all以更改默认行为,有关更多详细信息,请查看https://github.com/golang/go/issues/65204.

Go相关问答推荐

Golang Cososdb-gremlin连接

如何获得与cksum相同的CRC 32?

获取k8s群集作用域运算符的命名空间

如何复制*C.char?

如何修复Go中调用GetRawInputDeviceInfA Windows API函数时的错误?

mockgen不创建模拟

包裹网.Conn导致挂起读取

Redis:尽管数据存在,但 rdb.Pipelined 中出现redis:nil错误

如何使用 AWS sdk 在 Go 中正确解组 PartiQL 查询的结果?

使用 goroutine 比较 Golang 中的两棵树是等价的

命令行参数在 Golang 程序中不正确地接受为参数

如何在 Go 服务中导入 monorepo 中的包?

当我的 go build 成功时,如何修复我的 docker build 失败? Dockerfile 包括 go mod 下载

我在 go 中制作的递归函数有什么问题?

如何在自定义验证函数中获取 struct 名称

如何将一片十六进制字节转换为整数

Go 泛型:自引用接口约束

我如何解码 aes-256-cfb

具有近似约束的函数值导致的实例化失败

获取单调时间,同 CLOCK_MONOTONIC