go-sqlite3 icon indicating copy to clipboard operation
go-sqlite3 copied to clipboard

Win go get fails with clang

Open ghost opened this issue 5 years ago • 1 comments

I try to install this package using the clang compiler:

PS > $env:CC = "C:\PROGRA~2\MICROS~1\2019\COMMUN~1\VC\Tools\Llvm\bin\clang.exe"
PS > $env:CXX = $env:CC
PS >  go get -v github.com/mattn/go-sqlite3
github.com/mattn/go-sqlite3
# github.com/mattn/go-sqlite3
LINK : fatal error LNK1104: Datei "mingwex.lib" kann nicht ge�ffnet werden.
clang: error: linker command failed with exit code 1104 (use -v to see invocation)

The build fails because the binary is linked against the library mingwex (don't know what it is):

PS C:\Users\User\go\src\github.com\mattn\go-sqlite3> go build -x
WORK=C:\Users\User\AppData\Local\Temp\go-build350521474
# get https://proxy.golang.org/golang.org/x/net/@v/v0.0.0-20200324143707-d3edc9973b7e.mod
# get https://proxy.golang.org/github.com/%21puerkito%21bio/goquery/@v/v1.5.1.mod
# get https://proxy.golang.org/github.com/%21puerkito%21bio/goquery/@v/v1.5.1.mod: 200 OK (0.574s)
# get https://proxy.golang.org/golang.org/x/net/@v/v0.0.0-20200324143707-d3edc9973b7e.mod: 200 OK (0.574s)
# get https://proxy.golang.org/golang.org/x/text/@v/v0.3.0.mod
# get https://proxy.golang.org/golang.org/x/crypto/@v/v0.0.0-20190308221718-c2843e01d9a2.mod
# get https://proxy.golang.org/golang.org/x/sys/@v/v0.0.0-20200323222414-85ca7c5b95cd.mod
# get https://proxy.golang.org/github.com/andybalholm/cascadia/@v/v1.1.0.mod
# get https://proxy.golang.org/golang.org/x/net/@v/v0.0.0-20200202094626-16171245cfb2.mod
# get https://proxy.golang.org/golang.org/x/text/@v/v0.3.0.mod: 200 OK (0.022s)
# get https://proxy.golang.org/golang.org/x/crypto/@v/v0.0.0-20190308221718-c2843e01d9a2.mod: 200 OK (0.035s)
# get https://proxy.golang.org/golang.org/x/net/@v/v0.0.0-20200202094626-16171245cfb2.mod: 200 OK (0.032s)
# get https://proxy.golang.org/golang.org/x/sys/@v/v0.0.0-20200323222414-85ca7c5b95cd.mod: 200 OK (0.036s)
# get https://proxy.golang.org/github.com/andybalholm/cascadia/@v/v1.1.0.mod: 200 OK (0.032s)
# get https://proxy.golang.org/golang.org/x/sys/@v/v0.0.0-20190215142949-d0b11bdaac8a.mod
# get https://proxy.golang.org/golang.org/x/net/@v/v0.0.0-20180218175443-cbe0f9307d01.mod
# get https://proxy.golang.org/golang.org/x/sys/@v/v0.0.0-20190215142949-d0b11bdaac8a.mod: 200 OK (0.024s)
# get https://proxy.golang.org/golang.org/x/net/@v/v0.0.0-20180218175443-cbe0f9307d01.mod: 200 OK (0.025s)
mkdir -p $WORK\b001\
cd C:\Users\User\go\src\github.com\mattn\go-sqlite3
CGO_LDFLAGS='"-g" "-O2" "-lmingwex" "-lmingw32"' "c:\\go\\pkg\\tool\\windows_amd64\\cgo.exe" -objdir "$WORK\\b001\\" -importpath github.com/mattn/go-sqlite3 -- -I "$WORK\\b001\\" -g -O2 -std=gnu99 -DSQLITE_ENABLE_RTREE -DSQLITE_THREADSAFE=1 -DHAVE_USLEEP=1 -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS4_UNICODE61 -DSQLITE_TRACE_SIZE_LIMIT=15 -DSQLITE_OMIT_DEPRECATED -DSQLITE_DISABLE_INTRINSIC -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT -Wno-deprecated-declarations "-IC:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -fno-stack-check -fno-stack-protector -mno-stack-arg-probe "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3\\backup.go" "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3\\callback.go" "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3\\error.go" "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3\\sqlite3.go" "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3\\sqlite3_context.go" "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3\\sqlite3_load_extension.go" "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3\\sqlite3_opt_userauth_omit.go" "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3\\sqlite3_type.go" "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3\\sqlite3_usleep_windows.go" "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3\\sqlite3_windows.go"
cd $WORK
"C:\\PROGRA~2\\MICROS~1\\2019\\COMMUN~1\\VC\\Tools\\Llvm\\bin\\clang.exe" -fno-caret-diagnostics -c -x c - -o NUL || true
"C:\\PROGRA~2\\MICROS~1\\2019\\COMMUN~1\\VC\\Tools\\Llvm\\bin\\clang.exe" -Qunused-arguments -c -x c - -o NUL || true
"C:\\PROGRA~2\\MICROS~1\\2019\\COMMUN~1\\VC\\Tools\\Llvm\\bin\\clang.exe" -fdebug-prefix-map=a=b -c -x c - -o NUL || true
"C:\\PROGRA~2\\MICROS~1\\2019\\COMMUN~1\\VC\\Tools\\Llvm\\bin\\clang.exe" -gno-record-gcc-switches -c -x c - -o NUL || true
cd $WORK\b001
TERM='dumb' "C:\\PROGRA~2\\MICROS~1\\2019\\COMMUN~1\\VC\\Tools\\Llvm\\bin\\clang.exe" -I "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 "-fdebug-prefix-map=$WORK\\b001=/tmp/go-build" -gno-record-gcc-switches -I "$WORK\\b001\\" -g -O2 -std=gnu99 -DSQLITE_ENABLE_RTREE -DSQLITE_THREADSAFE=1 -DHAVE_USLEEP=1 -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS4_UNICODE61 -DSQLITE_TRACE_SIZE_LIMIT=15 -DSQLITE_OMIT_DEPRECATED -DSQLITE_DISABLE_INTRINSIC -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT -Wno-deprecated-declarations "-IC:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -fno-stack-check -fno-stack-protector -mno-stack-arg-probe -o "$WORK\\b001\\_x001.o" -c _cgo_export.c
TERM='dumb' "C:\\PROGRA~2\\MICROS~1\\2019\\COMMUN~1\\VC\\Tools\\Llvm\\bin\\clang.exe" -I "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 "-fdebug-prefix-map=$WORK\\b001=/tmp/go-build" -gno-record-gcc-switches -I "$WORK\\b001\\" -g -O2 -std=gnu99 -DSQLITE_ENABLE_RTREE -DSQLITE_THREADSAFE=1 -DHAVE_USLEEP=1 -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS4_UNICODE61 -DSQLITE_TRACE_SIZE_LIMIT=15 -DSQLITE_OMIT_DEPRECATED -DSQLITE_DISABLE_INTRINSIC -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT -Wno-deprecated-declarations "-IC:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -fno-stack-check -fno-stack-protector -mno-stack-arg-probe -o "$WORK\\b001\\_x002.o" -c backup.cgo2.c
TERM='dumb' "C:\\PROGRA~2\\MICROS~1\\2019\\COMMUN~1\\VC\\Tools\\Llvm\\bin\\clang.exe" -I "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 "-fdebug-prefix-map=$WORK\\b001=/tmp/go-build" -gno-record-gcc-switches -I "$WORK\\b001\\" -g -O2 -std=gnu99 -DSQLITE_ENABLE_RTREE -DSQLITE_THREADSAFE=1 -DHAVE_USLEEP=1 -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS4_UNICODE61 -DSQLITE_TRACE_SIZE_LIMIT=15 -DSQLITE_OMIT_DEPRECATED -DSQLITE_DISABLE_INTRINSIC -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT -Wno-deprecated-declarations "-IC:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -fno-stack-check -fno-stack-protector -mno-stack-arg-probe -o "$WORK\\b001\\_x003.o" -c callback.cgo2.c
TERM='dumb' "C:\\PROGRA~2\\MICROS~1\\2019\\COMMUN~1\\VC\\Tools\\Llvm\\bin\\clang.exe" -I "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 "-fdebug-prefix-map=$WORK\\b001=/tmp/go-build" -gno-record-gcc-switches -I "$WORK\\b001\\" -g -O2 -std=gnu99 -DSQLITE_ENABLE_RTREE -DSQLITE_THREADSAFE=1 -DHAVE_USLEEP=1 -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS4_UNICODE61 -DSQLITE_TRACE_SIZE_LIMIT=15 -DSQLITE_OMIT_DEPRECATED -DSQLITE_DISABLE_INTRINSIC -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT -Wno-deprecated-declarations "-IC:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -fno-stack-check -fno-stack-protector -mno-stack-arg-probe -o "$WORK\\b001\\_x004.o" -c error.cgo2.c
TERM='dumb' "C:\\PROGRA~2\\MICROS~1\\2019\\COMMUN~1\\VC\\Tools\\Llvm\\bin\\clang.exe" -I "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessaENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS4_UNICODE61 -DSQLITE_TRACE_SIZE_LIMIT=15 -DSQLITE_OMIT_DEPRECATED -DSQLITE_DISABLE_INTRINSIC -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT -Wno-deprecated-declarations "-IC:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -fno-stack-check -fno-stack-protector -mno-stack-arg-probe -o "$WORK\\b001\\_x005.o" -c sqlite3.cgo2.c
TERM='dumb' "C:\\PROGRA~2\\MICROS~1\\2019\\COMMUN~1\\VC\\Tools\\Llvm\\bin\\clang.exe" -I "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 "-fdebug-prefix-map=$WORK\\b001=/tmp/go-build" -gno-record-gcc-switches -I "$WORK\\b001\\" -g -O2 -std=gnu99 -DSQLITE_ENABLE_RTREE -DSQLITE_THREADSAFE=1 -DHAVE_USLEEP=1 -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS4_UNICODE61 -DSQLITE_TRACE_SIZE_LIMIT=15 -DSQLITE_OMIT_DEPRECATED -DSQLITE_DISABLE_INTRINSIC -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT -Wno-deprecated-declarations "-IC:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -fno-stack-check -fno-stack-protector -mno-stack-arg-probe -o "$WORK\\b001\\_x006.o" -c sqlite3_context.cgo2.c
TERM='dumb' "C:\\PROGRA~2\\MICROS~1\\2019\\COMMUN~1\\VC\\Tools\\Llvm\\bin\\clang.exe" -I "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 "-fdebug-prefix-map=$WORK\\b001=/tmp/go-build" -gno-record-gcc-switches -I "$WORK\\b001\\" -g -O2 -std=gnu99 -DSQLITE_ENABLE_RTREE -DSQLITE_THREADSAFE=1 -DHAVE_USLEEP=1 -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS4_UNICODE61 -DSQLITE_TRACE_SIZE_LIMIT=15 -DSQLITE_OMIT_DEPRECATED -DSQLITE_DISABLE_INTRINSIC -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT -Wno-deprecated-declarations "-IC:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -fno-stack-check -fno-stack-protector -mno-stack-arg-probe -o "$WORK\\b001\\_x007.o" -c sqlite3_load_extension.cgo2.c
TERM='dumb' "C:\\PROGRA~2\\MICROS~1\\2019\\COMMUN~1\\VC\\Tools\\Llvm\\bin\\clang.exe" -I "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessaENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS4_UNICODE61 -DSQLITE_TRACE_SIZE_LIMIT=15 -DSQLITE_OMIT_DEPRECATED -DSQLITE_DISABLE_INTRINSIC -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT -Wno-deprecated-declarations "-IC:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -fno-stack-check -fno-stack-protector -mno-stack-arg-probe -o "$WORK\\b001\\_x008.o" -c sqlite3_opt_userauth_omit.cgo2.c
TERM='dumb' "C:\\PROGRA~2\\MICROS~1\\2019\\COMMUN~1\\VC\\Tools\\Llvm\\bin\\clang.exe" -I "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 "-fdebug-prefix-map=$WORK\\b001=/tmp/go-build" -gno-record-gcc-switches -I "$WORK\\b001\\" -g -O2 -std=gnu99 -DSQLITE_ENABLE_RTREE -DSQLITE_THREADSAFE=1 -DHAVE_USLEEP=1 -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS4_UNICODE61 -DSQLITE_TRACE_SIZE_LIMIT=15 -DSQLITE_OMIT_DEPRECATED -DSQLITE_DISABLE_INTRINSIC -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT -Wno-deprecated-declarations "-IC:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -fno-stack-check -fno-stack-protector -mno-stack-arg-probe -o "$WORK\\b001\\_x009.o" -c sqlite3_type.cgo2.c
TERM='dumb' "C:\\PROGRA~2\\MICROS~1\\2019\\COMMUN~1\\VC\\Tools\\Llvm\\bin\\clang.exe" -I "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 "-fdebug-prefix-map=$WORK\\b001=/tmp/go-build" -gno-record-gcc-switches -I "$WORK\\b001\\" -g -O2 -std=gnu99 -DSQLITE_ENABLE_RTREE -DSQLITE_THREADSAFE=1 -DHAVE_USLEEP=1 -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS4_UNICODE61 -DSQLITE_TRACE_SIZE_LIMIT=15 -DSQLITE_OMIT_DEPRECATED -DSQLITE_DISABLE_INTRINSIC -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT -Wno-deprecated-declarations "-IC:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -fno-stack-check -fno-stack-protector -mno-stack-arg-probe -o "$WORK\\b001\\_x010.o" -c sqlite3_usleep_windows.cgo2.c
TERM='dumb' "C:\\PROGRA~2\\MICROS~1\\2019\\COMMUN~1\\VC\\Tools\\Llvm\\bin\\clang.exe" -I "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 "-fdebug-prefix-map=$WORK\\b001=/tmp/go-build" -gno-record-gcc-switches -I "$WORK\\b001\\" -g -O2 -std=gnu99 -DSQLITE_ENABLE_RTREE -DSQLITE_THREADSAFE=1 -DHAVE_USLEEP=1 -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS4_UNICODE61 -DSQLITE_TRACE_SIZE_LIMIT=15 -DSQLITE_OMIT_DEPRECATED -DSQLITE_DISABLE_INTRINSIC -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT -Wno-deprecated-declarations "-IC:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -fno-stack-check -fno-stack-protector -mno-stack-arg-probe -o "$WORK\\b001\\_x011.o" -c sqlite3_windows.cgo2.c
cd C:\Users\User\go\src\github.com\mattn\go-sqlite3
TERM='dumb' "C:\\PROGRA~2\\MICROS~1\\2019\\COMMUN~1\\VC\\Tools\\Llvm\\bin\\clang.exe" -I "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 "-fdebug-prefix-map=$WORK\\b001=/tmp/go-build" -gno-record-gcc-switches -I "$WORK\\b001\\" -g -O2 -std=gnu99 -DSQLITE_ENABLE_RTREE -DSQLITE_THREADSAFE=1 -DHAVE_USLEEP=1 -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS4_UNICODE61 -DSQLITE_TRACE_SIZE_LIMIT=15 -DSQLITE_OMIT_DEPRECATED -DSQLITE_DISABLE_INTRINSIC -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT -Wno-deprecated-declarations "-IC:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -fno-stack-check -fno-stack-protector -mno-stack-arg-probe -o "$WORK\\b001\\_x012.o" -c sqlite3-binding.c
TERM='dumb' "C:\\PROGRA~2\\MICROS~1\\2019\\COMMUN~1\\VC\\Tools\\Llvm\\bin\\clang.exe" -I "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 "-fdebug-prefix-map=$WORK\\b001=/tmp/go-build" -gno-record-gcc-switches -I "$WORK\\b001\\" -g -O2 -std=gnu99 -DSQLITE_ENABLE_RTREE -DSQLITE_THREADSAFE=1 -DHAVE_USLEEP=1 -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS4_UNICODE61 -DSQLITE_TRACE_SIZE_LIMIT=15 -DSQLITE_OMIT_DEPRECATED -DSQLITE_DISABLE_INTRINSIC -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT -Wno-deprecated-declarations "-IC:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -fno-stack-check -fno-stack-protector -mno-stack-arg-probe -o "$WORK\\b001\\_x013.o" -c sqlite3_opt_unlock_notify.c
cd $WORK\b001
TERM='dumb' "C:\\PROGRA~2\\MICROS~1\\2019\\COMMUN~1\\VC\\Tools\\Llvm\\bin\\clang.exe" -I "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 "-fdebug-prefix-map=$WORK\\b001=/tmp/go-build" -gno-record-gcc-switches -I "$WORK\\b001\\" -g -O2 -std=gnu99 -DSQLITE_ENABLE_RTREE -DSQLITE_THREADSAFE=1 -DHAVE_USLEEP=1 -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_FTS3_PARENTHESIS -DSQLITE_ENABLE_FTS4_UNICODE61 -DSQLITE_TRACE_SIZE_LIMIT=15 -DSQLITE_OMIT_DEPRECATED -DSQLITE_DISABLE_INTRINSIC -DSQLITE_DEFAULT_WAL_SYNCHRONOUS=1 -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT -Wno-deprecated-declarations "-IC:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -fno-stack-check -fno-stack-protector -mno-stack-arg-probe -o "$WORK\\b001\\_cgo_main.o" -c _cgo_main.c
cd C:\Users\User\go\src\github.com\mattn\go-sqlite3
TERM='dumb' "C:\\PROGRA~2\\MICROS~1\\2019\\COMMUN~1\\VC\\Tools\\Llvm\\bin\\clang.exe" -I "C:\\Users\\User\\go\\src\\github.com\\mattn\\go-sqlite3" -m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessaK\\b001\\_x004.o" "$WORK\\b001\\_x005.o" "$WORK\\b001\\_x006.o" "$WORK\\b001\\_x007.o" "$WORK\\b001\\_x008.o" "$WORK\\b001\\_x009.o" "$WORK\\b001\\_x010.o" "$WORK\\b001\\_x011.o" "$WORK\\b001\\_x012.o" "$WORK\\b001\\_x013.o" -g -O2 -lmingwex -lmingw32
# github.com/mattn/go-sqlite3
LINK : fatal error LNK1104: Datei "mingwex.lib" kann nicht ge�ffnet werden.
clang: error: linker command failed with exit code 1104 (use -v to see invocation)

Go environment:

> go env
set GO111MODULE=
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\User\AppData\Local\go-build
set GOENV=C:\Users\User\AppData\Roaming\go\env
set GOEXE=.exe
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOINSECURE=
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=C:\Users\User\go
set GOPRIVATE=
set GOPROXY=https://proxy.golang.org,direct
set GOROOT=c:\go
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLDIR=c:\go\pkg\tool\windows_amd64
set GCCGO=gccgo
set AR=ar
set CC=C:\PROGRA~2\MICROS~1\2019\COMMUN~1\VC\Tools\Llvm\bin\clang.exe
set CXX=C:\PROGRA~2\MICROS~1\2019\COMMUN~1\VC\Tools\Llvm\bin\clang.exe
set CGO_ENABLED=1
set GOMOD=C:\Users\User\go\src\github.com\mattn\go-sqlite3\go.mod
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=C:\Users\User\AppData\Local\Temp\go-build312169634=/tmp/go-build -gno-record-gcc-switches

clang version

> clang.exe -v
clang version 9.0.0 (tags/RELEASE_900/final)
Target: i686-pc-windows-msvc
Thread model: posix
InstalledDir: C:\PROGRA~2\MICROS~1\2019\COMMUN~1\VC\Tools\Llvm\bin

After deleting line sqlite3_windows.go#L15

#cgo LDFLAGS: -lmingwex -lmingw32

the build succeeds.

ghost avatar May 31 '20 14:05 ghost

However, I cannot use the library in another project, because the linker errors out. I suspect that the clang target is incompatible with the go linker, but I'm not sure.

ghost avatar May 31 '20 14:05 ghost