问题类似于here描述的问题,但答案对我没有帮助。
我使用从源码构建的Go 1.4。
我发布了$ go install -x -a
来强制重建所有包(尽管我只对一个go文件进行了更改)。该项目结构良好,并在名为main.go的文件中包含一个命令,其中包含package main
和func main()
我的想法已经用完,但对构建过程有了更好的理解......
$ go env
GOARCH="386"
GOBIN=""
GOCHAR="8"
GOEXE=""
GOHOSTARCH="386"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/jdevoo/Downloads/go"
GORACE=""
GOROOT="/home/jdevoo/go"
GOTOOLDIR="/home/jdevoo/go/pkg/tool/linux_386"
CC="gcc"
GOGCCFLAGS="-fPIC -m32 -pthread -fmessage-length=0"
CXX="g++"
CGO_ENABLED="1"
有什么想法吗?
答案 0 :(得分:0)
这实际上取决于您main.go
的确切位置。
应该在$GOPATH/src/yourProject/main.go
,go install
生成$GOPATH/bin/yourProject
。
这就是" Your first program"描述
$GOPATH
为your workspace,应始终包含src
,pkg
和bin
。
专门为该命令获取二进制文件:
cd $GOPATH/src/github.com/eris-ltd/decerver/cmd/decerver/
go get
# or
go install
注意-x
选项应该"打印命令"只。
-a
会迫使重建。