go version
)?goバージョンgo1.9.2darwin / 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"
macOSSierraでGOOS=linux GOARCH=amd64 go build -v -o appname
を実行しました
成功したLinuxクロスコンパイル
クロスコンパイルは、有用なエラーメッセージなしで失敗しました。 エラーコード2を返すだけです。ただし、 go build -v -o appname
には問題はありません。
どうすればデバッグできますか?
macOSSierraでは再現できません。
-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
オプションを教えてくれてありがとう。次のような明確なエラーメッセージがあります。
申し訳ありませんが、注意深くチェックしていませんでした。 はい、エラーが発生しました。これはビルドコマンドの問題ではありません。
ありがとう :)