vscode 中无法编译 mit-6.824 lab1 中的 wc.go 文件
最近在学习 MIT 上发布的分布式系统设计课程。
按照 lab1 的步骤执行:
git clone git://g.csail.mit.edu/6.824-golabs-2020 6.824
cd ~/6.824
cd src/main
go build -buildmode=plugin ../mrapps/wc.go
在vscode中执行后会提示:
build command-line-arguments: cannot find module for path _/.../go/6.824-golabs-2020/src/mr
接着尝试用sudo
去执行,居然可以进行编译!( ̄△ ̄;)
后面发现vscode中的Go Extension查看文件的时候会报错提示:
go: cannot find main module, but found .git/config in /.../go/6.824-golabs-2020
to create a module there, run:
cd ../.. && go mod init
这个应该是没有初始化包管理的原因,所以进行了包管理初始化:
go mod init 6.824-golabs-2020
这样就解决了报错提示。
但是初始化包管理之后,即使是采用sudo
去执行go build -buildmode=plugin ../mrapps/wc.go
依然出现:
build command-line-arguments: cannot find module for path _/.../go/6.824-golabs-2020/src/mr
所以请教下社区大佬们:
- 为什么执行
sudo
之后就可以build
了,可不可以不用sudo
? - 在
mod init
之后,怎么样才能够进行build
? - 还有没有更好的配置建议?
THX~
推荐文章: