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
没有任何问题。
我该如何调试它?
我无法在 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 的交叉编译吗?
我也遇到这个问题,但无法解决
最有用的评论
@bradfitz感谢您让我知道
-x
选项。有一个明确的错误信息如下:
对不起,我没有仔细检查。 是的,我遇到了一个错误,这不是构建命令的问题。
谢谢 :)