为什么 'go build file.go' 在我的本地终端上工作正常,但通过 SSH 给我一个错误?
Why would 'go build file.go' work fine at my local terminal, but give me an error over SSH?
当我在我的本地终端(ubuntu 上的 Konsole)运行 'go build file.go'(或 'go install')时,我的代码构建正确,没有任何警告。但是,当我通过 SSH(从另一个 linux 框或使用 Windows 中的 PuTTY)进入完全相同的机器时,我收到警告消息:
warning: GOPATH set to GOROOT (/home/[username]/go) has no effect go
build runtime: linux/amd64 must be bootstrapped using make.bash
在终端中:
'go version' 报告 go1.3.3 linux/amd64
'which go' 报道 /usr/local/go/bin/go
通过 SSH:
'go version' 报告 go1.2.1 linux/amd64
'which go' 报告 /home/[用户名]/go/bin/go
很明显,您的本地(可能是 GUI 桌面)Ubuntu 登录和 ssh 登录之间的环境不同。
这并不意外。
建议:
1) 从本地 Konsole GUI 终端输入 "env"。记下对你特别重要的环境变量:PATH、GOPATH、GOROOT等
2) 编辑您的 $HOME/.profile
文件(又名 ~/.profile
)。
显式设置这些变量。
3) 再次尝试 ssh - 看看是否有任何不同。
另请参阅:
您也可以考虑启用远程 VNC:
https://www.digitalocean.com/community/tutorials/how-to-setup-vnc-for-ubuntu-12
https://askubuntu.com/questions/304017/how-to-set-up-remote-desktop-sharing-through-ssh
当我在我的本地终端(ubuntu 上的 Konsole)运行 'go build file.go'(或 'go install')时,我的代码构建正确,没有任何警告。但是,当我通过 SSH(从另一个 linux 框或使用 Windows 中的 PuTTY)进入完全相同的机器时,我收到警告消息:
warning: GOPATH set to GOROOT (/home/[username]/go) has no effect go build runtime: linux/amd64 must be bootstrapped using make.bash
在终端中:
'go version' 报告 go1.3.3 linux/amd64
'which go' 报道 /usr/local/go/bin/go
通过 SSH:
'go version' 报告 go1.2.1 linux/amd64
'which go' 报告 /home/[用户名]/go/bin/go
很明显,您的本地(可能是 GUI 桌面)Ubuntu 登录和 ssh 登录之间的环境不同。
这并不意外。
建议:
1) 从本地 Konsole GUI 终端输入 "env"。记下对你特别重要的环境变量:PATH、GOPATH、GOROOT等
2) 编辑您的 $HOME/.profile
文件(又名 ~/.profile
)。
显式设置这些变量。
3) 再次尝试 ssh - 看看是否有任何不同。
另请参阅:
您也可以考虑启用远程 VNC:
https://www.digitalocean.com/community/tutorials/how-to-setup-vnc-for-ubuntu-12
https://askubuntu.com/questions/304017/how-to-set-up-remote-desktop-sharing-through-ssh