【发布时间】:2013-02-13 08:36:48
【问题描述】:
我的测试程序test.go:
package main
import "fmt"
func main() {
fmt.Printf("Hello\n")
}
运行此go run test.go 会出现错误:
# io
pack: cannot open $WORK/io/_obj/_go_.6
# strconv
pack: cannot open $WORK/strconv/_obj/_go_.6
环境:
go version devel +715674f61ae8 Tue Jan 29 13:34:18 2013 -0800 linux/amd64
GOARCH="amd64"
GOBIN=""
GOCHAR="6"
GOEXE=""
GOGCCFLAGS="-g -O2 -fPIC -m64 -pthread"
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/usr/local/google/home/igord/incub/web"
GOROOT="/opt/go"
GOTOOLDIR="/opt/go/pkg/tool/linux_amd64"
CGO_ENABLED="1"
但我从 go 网站上的(精选)RELEASE 1.0.3 下载了这个版本!
【问题讨论】:
-
go env的输出是什么? -
您是否将Go安装到了不寻常的位置?你的 $GOROOT 和 $GOPATH 是什么?见golang.org/doc/install#install
-
go env的输出是什么?go run -work test.go的输出是什么? -
对于
go run -work test.go:WORK=/tmp/go-build437772438,其余的都是一样的。 -
@RichChurcher 你是对的。我把转到
/opt。在我将其移至/usr/local/后,一切正常。但请注意我让GOROOT指向安装路径。
标签: go