Go 去安装&x27;无法创建bin文件

Go 去安装&x27;无法创建bin文件,go,Go,这个问题和上面描述的类似,但答案对我没有帮助 我使用从源代码构建的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="

这个问题和上面描述的类似,但答案对我没有帮助

我使用从源代码构建的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"

有什么想法吗?

这取决于你的
主站在哪里

它应该位于
$GOPATH/src/yourProject/main.go
中,以便
go安装
生成
$GOPATH/bin/yourProject

这就是“”所描述的

$GOPATH
是,并且应该始终包括
src
pkg
bin

要获取特定于该命令的二进制文件,请执行以下操作:

cd $GOPATH/src/github.com/eris-ltd/decerver/cmd/decerver/
go get
# or
go install
请注意,
-x
选项应仅用于“打印命令”。

-a
将强制重建。

先进行构建,然后进行安装(无参数)怎么样?您会看到您的程序在
/home/jdevoo/Downloads/go/bin
中编译吗?你的主要任务在哪里?直接在
/home/jdevoo/Downloads/go/src
下?已尝试-无更改。main.go文件位于
github.com/eris ltd/deserver/cmd/deserver
下-我看到安装生成了归档文件,但没有运行最后一个链接器步骤您的
main.go在哪里?直接在
/home/jdevoo/Downloads/go/src
下?我的$GOPATH不包含多个条目,我尝试了一个简单的hello程序,该程序运行良好,生成了hello二进制文件。您可以尝试将main.go移到
/home/jdevoo/Downloads/go/src
内的子文件夹下吗?或者你的意思是你的
GOPATH
中甚至没有
src
。工作区包含3个文件夹。该应用程序是使用
go-get-github.com/eris-ltd/deserver
安装的,然后是
cd$GOPATH/src/github.com/eris-ltd/deserver/cmd/deserver/
,然后是
go-get-d.
go-install
——这起作用并生成了原始二进制文件。我所要做的就是修改一个文件并重新生成可执行文件。这就是为什么我被困住了-不知道怎么了。。。超级怪人还有什么可以阻止链接器启动?Go给我留下了档案文件。。。也就是说,main.go可能没有使用修改过的go文件,因此生成过程没有重新生成
deserver
命令?好吧-我意外地获得了一个新的二进制文件。我从包含main.go的目录中发布了
goget-x