如何构建 `cmd/compile` 本身

目标

我想构建cmd/compile,这是 go 的编译命令。

问题

首先,我将https://github.com/golang/go克隆到~/src/github.com/golang/go并修改src/cmd/compile.

其次,我移动到~/src/github.com/golang/go/src,然后输入go build -o aaa -i cmd/compile

最后,aaa有效,但它不包含我修改的任何内容。

如您所知,在任何地方(即使是~/or/tmp或其他),一旦您键入go build -o aaa -i cmd/compile,您就可以获得aaa.

但是,我想让它修改并构建它。

我怎样才能做到这一点?


明月笑刀无情
浏览 167回答 1
1回答

慕尼黑的夜晚无繁华

当您构建 packagecmd/compile时,它会为当前编译器构建 stdlib 包,而不是您所在的源代码树中的包。如果您打算使用编译器本身,则需要引导您自己的编译器:克隆 go 源代码转到 /src运行 ./all.bash这将构建整个源代码树,并为您创建一个新的编译器。完成后,您必须使用此过程构建的编译器,该编译器位于~/src/github.com/golang/go/bin.
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go