Mon*_*lal 146 macos installation go
我想安装json2csv go get github.com/jehiah/json2csv但我收到此错误:
package github.com/jehiah/json2csv: cannot download, $GOPATH not set. For more details see: go help go path
Run Code Online (Sandbox Code Playgroud)
有关如何在MacOS上解决此问题的任何帮助?
two*_*two 137
[更新:从Go 1.8开始,GOPATH默认为$HOME/go,但如果你想了解GOPATH布局,自定义它等,你仍然可以发现它很有用]
Go官方网站讨论了GOPATH以及如何布局工作区目录.
export GOPATH="$HOME/your-workspace-dir/"- 在shell中运行它,然后将其添加到~/.bashrc或等效,以便将来为您设置.去将安装包下src/,bin/和pkg/,子目录那里.你想把自己的软件包放在某个地方$GOPATH/src,比如$GOPATH/src/github.com/myusername/你想发布到GitHub.您也可能想要export PATH=$PATH:$GOPATH/bin在您的下面.bashrc运行已编译的程序$GOPATH.
或者,通过Rob Pike,您也可以设置为在bash中打包dirs CDPATH更快cd:export CDPATH=.:$GOPATH/src/github.com:$GOPATH/src/golang.org/x意味着您只需键入cd net/html而不是cd $GOPATH/src/golang.org/x/net/html.
基思Rarick 笔记可以设置GOPATH=$HOME放去的src/,pkg/和bin/目录就在你主目录.这可能很好(例如,您可能已经$HOME/bin在您的路径中)但当然有些人使用多个工作区等.
sur*_*upa 85
这个工作
在Ubuntu上设置Go开发环境,以及如何修复$ GOPATH/$ GOROOT
脚步
mkdir ~/go
Run Code Online (Sandbox Code Playgroud)
在.bashrc中设置$ GOPATH,
export GOPATH=~/go
export PATH=$PATH:$GOPATH/bin
Run Code Online (Sandbox Code Playgroud)
slm*_*slm 33
我用它安装了它brew.
$ brew install go
Run Code Online (Sandbox Code Playgroud)
完成后如果你运行这个brew命令,它将显示以下信息:
$ brew info go
go: stable 1.4.2 (bottled), HEAD
Go programming environment
https://golang.org
/usr/local/Cellar/go/1.4.2 (4676 files, 158M) *
Poured from bottle
From: https://github.com/Homebrew/homebrew/blob/master/Library/Formula/go.rb
==> Options
--with-cc-all
Build with cross-compilers and runtime support for all supported platforms
--with-cc-common
Build with cross-compilers and runtime support for darwin, linux and windows
--without-cgo
Build without cgo
--without-godoc
godoc will not be installed for you
--without-vet
vet will not be installed for you
--HEAD
Install HEAD version
==> Caveats
As of go 1.2, a valid GOPATH is required to use the `go get` command:
https://golang.org/doc/code.html#GOPATH
You may wish to add the GOROOT-based install location to your PATH:
export PATH=$PATH:/usr/local/opt/go/libexec/bin
Run Code Online (Sandbox Code Playgroud)
这些重要的部分是这些线:
/usr/local/Cellar/go/1.4.2(4676个文件,158M)*
export PATH = $ PATH:/ usr/local/opt/go/libexec/bin
这显示了GO的安装位置.我们需要执行以下操作来设置GO的环境:
$ export PATH=$PATH:/usr/local/opt/go/libexec/bin
$ export GOPATH=/usr/local/opt/go/bin
Run Code Online (Sandbox Code Playgroud)
然后,您可以使用GO检查它是否正确配置:
$ go env
GOARCH="amd64"
GOBIN=""
GOCHAR="6"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/usr/local/opt/go/bin"
GORACE=""
GOROOT="/usr/local/Cellar/go/1.4.2/libexec"
GOTOOLDIR="/usr/local/Cellar/go/1.4.2/libexec/pkg/tool/darwin_amd64"
CC="clang"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fno-common"
CXX="clang++"
CGO_ENABLED="1"
Run Code Online (Sandbox Code Playgroud)
看起来不错,所以让我们安装json2csv:
$ go get github.com/jehiah/json2csv
$
Run Code Online (Sandbox Code Playgroud)
刚刚发生了什么?它安装了它.你可以这样检查:
$ $ ls -l $GOPATH/bin
total 5248
-rwxr-xr-x 1 sammingolelli staff 2686320 Jun 9 12:28 json2csv
Run Code Online (Sandbox Code Playgroud)
好的,为什么我不能输入json2csv我的shell?那是因为下面的/bin目录$GOPATH不在你的目录上$PATH.
$ type -f json2csv
-bash: type: json2csv: not found
Run Code Online (Sandbox Code Playgroud)
所以我们暂时添加它:
$ export PATH=$GOPATH/bin:$PATH
Run Code Online (Sandbox Code Playgroud)
并重新检查:
$ type -f json2csv
json2csv is hashed (/usr/local/opt/go/bin/bin/json2csv)
Run Code Online (Sandbox Code Playgroud)
现在它在那里:
$ json2csv --help
Usage of json2csv:
-d=",": delimiter used for output values
-i="": /path/to/input.json (optional; default is stdin)
-k=[]: fields to output
-o="": /path/to/output.json (optional; default is stdout)
-p=false: prints header to output
-v=false: verbose output (to stderr)
-version=false: print version string
Run Code Online (Sandbox Code Playgroud)
加入我们来所做的修改$PATH,并$GOPATH给你的$HOME/.bash_profile,使他们重新引导之间依然存在.
0x4*_*D53 18
总的来说,我总是推荐Go的这个官方视频来快速了解这个问题:
http://www.youtube.com/watch?v=XCsL89YtqCs
它被展示比被告知更容易.
@jwfearn转述了视频的重要部分:
export GOPATH="${HOME}/gocode"; export PATH="${PATH}:${GOPATH}/bin"; mkdir -p "${GOPATH}"
小智 6
我发现这样做更容易:
export GOROOT=$HOME/go
export GOPATH=$GOROOT/bin
export PATH=$PATH:$GOPATH
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
127817 次 |
| 最近记录: |