Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Compilation Go:“;全部.bash“;编译测试失败,返回“0”;“拒绝许可”;_Compilation_Go_Installation - Fatal编程技术网

Compilation Go:“;全部.bash“;编译测试失败,返回“0”;“拒绝许可”;

Compilation Go:“;全部.bash“;编译测试失败,返回“0”;“拒绝许可”;,compilation,go,installation,Compilation,Go,Installation,我正在尝试在Bluehost共享服务器中安装Golang 到目前为止,我已在服务器上执行了以下操作: cd ~ wget https://storage.googleapis.com/golang/go1.3.1.linux-amd64.tar.gz tar -xvf go1.3.1.linux-amd64.tar.gz rm go1.3.1.linux-amd64.tar.gz vi .bashrc 我将.bashrc文件设置为要使用的本地值 # Configuration for Go e

我正在尝试在Bluehost共享服务器中安装Golang

到目前为止,我已在服务器上执行了以下操作:

cd ~
wget https://storage.googleapis.com/golang/go1.3.1.linux-amd64.tar.gz
tar -xvf go1.3.1.linux-amd64.tar.gz
rm go1.3.1.linux-amd64.tar.gz
vi .bashrc
我将
.bashrc
文件设置为要使用的本地值

# Configuration for Go
export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin
然后我跑:

source ~/.bashrc
cd ~/go/src
./all.bash
在测试之前一切都很顺利:

warning: GOPATH set to GOROOT (/home1/username/go) has no effect
...
fork/exec /tmp/go-build667300507/cmd/addr2line/_test/addr2line.test: permission denied
FAIL    cmd/addr2line   0.053s
?       cmd/cgo [no test files]
...
在那之后,每个测试都失败了,因为我没有访问/tmp的权限。我在想也许有一个变量可以在我可以访问的地方设置测试,但我没有找到它

关于
GOPATH设置为GOROOT(/home1/username/go)不起作用
。我跑过:

echo $GOROOT

而且还没有定下来。这是怎么回事?

您应该将
GOROOT
添加到您的
。bashrc

export GOROOT=$HOME/go1.3.1.linux-amd64/go
# or, depending how the archive was un-tar'd:
export GOROOT=$HOME/go
export PATH=$PATH:$GOROOT/bin
GOPATH
应设置为,即项目所在的文件夹

export GOPATH=$HOME/goprojects
export PATH=$PATH:$GOPATH/bin
您将在
GOPATH
中拥有
src
bin
pkg


请记住,归档文件用于直接使用go(它有预编译的二进制文件)


只有从源代码构建go时,执行
all.bash
才有意义,但在这种情况下,您只需要源代码()。

Hey@VonC!谢谢你的回答。我将GOROOT和GOPATH变量添加到my.bashrc中,它去掉了GOROOT警告的GOPATH设置。但是由于权限被拒绝的错误,测试仍然失败。@pachanka只是想确定一下,像
go version
这样的命令是否有效?是的“go version go1.3.1 linux/amd64”那么您就不需要执行
/all.bash
:我已经编辑了答案。@panchanka您被拒绝权限的原因很可能是因为在大多数linux发行版中/tmp是作为带有noexec mount选项的tmpfs装载的。