6g:在 Go 中编译外部 API 代码时找不到命令错误

我是 golang 的新手,我正在尝试使用本教程编写程序。


但是我在编译它时抛出了这个错误。


6g: command not found

这是我尝试过的:


$ go version

go version go1.4.1 darwin/amd64

我已经正确设置了环境变量

这是我的 .bashrc 的样子:


 $ tail ~/.bashrc


export GOBIN=/Users/abhijeet/code/golang/go/bin  

export GOROOT=/Users/abhijeet/code/golang/go  

export GOPATH=/Users/abhijeet/code/golang/gopath  

export GOOS="darwin"  

export GOARCH="amd64"  

export PATH="$GOBIN:$PATH"

我在 /etc/profile 下添加了以下行以获取它

这是它的外观:


[ -r $HOME/.bashrc ] && source $HOME/.bashrc

如果我退出终端,再次启动它并回显任何变量,它们就会起作用。


我已经安装了 gcc。


这是我运行“gcc --version”命令时得到的结果:


$ gcc --version


Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.10.sdk/usr/include/c++/4.2.1

Apple LLVM version 6.0 (clang-600.0.56) (based on LLVM 3.5svn)

Target: x86_64-apple-darwin14.1.0

Thread model: posix

如果我编写任何其他 go 程序并运行它,它就可以工作。例如,从这里第 1 节到第 5 节,直到“Go Templates - Part 3 - Template Sets”的所有程序即使现在也能正常工作。只有这个特定的教程让我感到不安。


我刚刚提供链接的其他程序都不需要我运行“6g”命令。但它们仍然在我的机器上运行。


关于出现错误的那一行,我正在使用正确的那一行来反映我机器中的文件夹名称。


他们要求运行的内容:


6g -I $GOPATH/pkg/linux_amd64 urlshortener.go

我正在运行的内容:


6g -I $GOPATH/pkg/darwin_amd64 urlshortener.go

重要提示:我已按照教程中的所有步骤使用外部 api。但是,如果我查看 darwin_amd64 文件夹,我根本看不到任何 urlshortener.go 文件!

我能找到的只有


darwin_amd64

├───code.google.com

│   ├───p

│   │   └───google-api-go-client

│   │       └───googleapi

│   │       │    └─── <more folders and files here>

│   │       └───urlshortener 

│   │       │   └───v1.a

│   │       └───googleapi.a

│   │ 

所以我知道那里存在一些问题,但我也知道这可能不是导致我看到的错误的原因,否则我会看到“找不到文件”之类的错误。我只是想将其作为附加数据提及。


所以我很感激这方面的任何帮助。如果我还应该提供任何其他数据,请告诉我。


慕运维8079593
浏览 165回答 1
1回答

MM们

这是一个内部命令,您可以使用go tool 6g.话虽如此,该指南已经非常过时,不再相关。编译我使用: 6g -I $GOPATH/pkg/linux_amd64 urlshortener.go我使用的链接: 6l -L $GOPATH/pkg/linux_amd64 urlshortener.6被简单地运行go build urlshortner.go甚至取代go run urlshortner.go
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go