我是golang的新手,我有一个单一的包文件"hello_world.go",我通过"go build hello_world.go"进行编译。之后,我期望看到可执行文件"hello_world",但我没有看到。
我尝试使用"go build"选项-x和-v,以下是输出结果:
go build -x -v hello_world.go
WORK=/tmp/go-build697702511
command-line-arguments
mkdir -p $WORK/command-line-arguments/_obj/
mkdir -p $WORK/
cd /home/vignesh/exercism/go/hello-world
/usr/local/go/pkg/tool/linux_amd64/compile -o $WORK/command-line- arguments.a -trimpath $WORK -goversion go1.9.2 -p command-line-arguments -complete -buildid 1d40767f999b0c5cb646b061911455ddde0101d2 -D _/home/vignesh/exercism/go/hello-world -I $WORK -pack ./hello_world.go
以下是在进行了上述两个"go build"操作后,我的工作目录中的内容。
-rw------- 1 vignesh vignesh 208 Jul 17 20:50 .solution.json
-rw-rw-r-- 1 vignesh vignesh 1451 Jul 17 20:50 README.md
-rw-rw-r-- 1 vignesh vignesh 1311 Jul 17 20:50 hello_test.go_bkp
drwxr-xr-x 4 vignesh vignesh 4096 Jul 18 18:27 ..
-rw-rw-r-- 1 vignesh vignesh 1311 Jul 18 20:27 hello_test.go
-rw-rw-r-- 1 vignesh vignesh 684 Jul 18 20:29 hello_world.go
drwxr-xr-x 2 vignesh vignesh 4096 Jul 18 20:57 .
我尝试使用命令"go build -o aaa hello_world.go"来生成二进制文件"aaa",但执行时出现以下错误:
./aaa: line 1: syntax error near unexpected token `newline'
./aaa: line 1: `!<arch>'
以下是"go env"的输出:
GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/vignesh/exercism/go"
GORACE=""
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build845978294=/tmp/go-build -gno-record-gcc-switches"
CXX="g++"
CGO_ENABLED="1"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
请帮我解决这个问题或提供任何调试建议,谢谢。
提前感谢。