Go: cmd/go:交叉编译失败,没有有用的错误信息

创建于 2017-12-01  ·  3评论  ·  资料来源: golang/go

您使用的是什么版本的 Go ( go version )?

go 版本 go1.9.2 darwin/amd64

这个问题会在最新版本中重现吗?

我正在使用最新版本

您使用的是什么操作系统和处理器架构( go env )?

GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/ming/go"
GORACE=""
GOROOT="/usr/local/Cellar/go/1.9.2/libexec"
GOTOOLDIR="/usr/local/Cellar/go/1.9.2/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/mm/33b_7wg94g73p0l7w8m11dvw0000gn/T/go-build649463343=/tmp/go-build -gno-record-gcc-switches -fno-common"
CXX="clang++"
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"

你做了什么?

我在 macOS Sierra 上运行了GOOS=linux GOARCH=amd64 go build -v -o appname

你期待看到什么?

linux交叉编译成功

你看到了什么?

交叉编译失败,没有任何有用的错误消息。 只需返回错误代码 2。但是go build -v -o appname没有任何问题。

我该如何调试它?

FrozenDueToAge WaitingForInfo

最有用的评论

@bradfitz感谢您让我知道-x选项。

有一个明确的错误信息如下:

...
mkdir -p $WORK/github.com/sundaytoz/sql-snippet-manager/vendor/github.com/mattn/
cd /Users/ming/go/src/github.com/sundaytoz/sql-snippet-manager/vendor/github.com/mattn/go-sqlite3
/usr/local/Cellar/go/1.9.2/libexec/pkg/tool/darwin_amd64/compile -o $WORK/github.com/sundaytoz/sql-snippet-manager/vendor/github.com/mattn/go-sqlite3.a -trimpath $WORK -goversion go1.9.2 -p github.com/sundaytoz/sql-snippet-manager/vendor/github.com/mattn/go-sqlite3 -complete -buildid e2e40ec7a2518c0ee6542b117325619e76d5295c -importmap golang.org/x/net/context=github.com/sundaytoz/sql-snippet-manager/vendor/golang.org/x/net/context -D _/Users/ming/go/src/github.com/sundaytoz/sql-snippet-manager/vendor/github.com/mattn/go-sqlite3 -I $WORK -I /Users/ming/go/pkg/darwin_amd64 -pack ./doc.go ./sqlite3_go18.go
# github.com/sundaytoz/sql-snippet-manager/vendor/github.com/mattn/go-sqlite3
vendor/github.com/mattn/go-sqlite3/sqlite3_go18.go:18:10: undefined: SQLiteConn
...

对不起,我没有仔细检查。 是的,我遇到了一个错误,这不是构建命令的问题。

谢谢 :)

所有3条评论

我无法在 macOS Sierra 上重现。

尝试将-x添加到go build并发布结果。

@bradfitz感谢您让我知道-x选项。

有一个明确的错误信息如下:

...
mkdir -p $WORK/github.com/sundaytoz/sql-snippet-manager/vendor/github.com/mattn/
cd /Users/ming/go/src/github.com/sundaytoz/sql-snippet-manager/vendor/github.com/mattn/go-sqlite3
/usr/local/Cellar/go/1.9.2/libexec/pkg/tool/darwin_amd64/compile -o $WORK/github.com/sundaytoz/sql-snippet-manager/vendor/github.com/mattn/go-sqlite3.a -trimpath $WORK -goversion go1.9.2 -p github.com/sundaytoz/sql-snippet-manager/vendor/github.com/mattn/go-sqlite3 -complete -buildid e2e40ec7a2518c0ee6542b117325619e76d5295c -importmap golang.org/x/net/context=github.com/sundaytoz/sql-snippet-manager/vendor/golang.org/x/net/context -D _/Users/ming/go/src/github.com/sundaytoz/sql-snippet-manager/vendor/github.com/mattn/go-sqlite3 -I $WORK -I /Users/ming/go/pkg/darwin_amd64 -pack ./doc.go ./sqlite3_go18.go
# github.com/sundaytoz/sql-snippet-manager/vendor/github.com/mattn/go-sqlite3
vendor/github.com/mattn/go-sqlite3/sqlite3_go18.go:18:10: undefined: SQLiteConn
...

对不起,我没有仔细检查。 是的,我遇到了一个错误,这不是构建命令的问题。

谢谢 :)

@mingrammer你修复了 go-sqlite3 的交叉编译吗?
我也遇到这个问题,但无法解决

此页面是否有帮助?
0 / 5 - 0 等级