go: cmd/link: -buildmode=c-shared not supported on windows/arm
What version of Go are you using (go version
)?
$ go version 1.15.6
Does this issue reproduce with the latest release?
yes
What operating system and processor architecture are you using (go env
)?
go env
Output
$ go env GO111MODULE="" GOARCH="amd64" GOBIN="" GOCACHE="/home/vsts/.cache/go-build" GOENV="/home/vsts/.config/go/env" GOEXE="" GOFLAGS="" GOHOSTARCH="amd64" GOHOSTOS="linux" GOINSECURE="" GOMODCACHE="/home/vsts/go/pkg/mod" GONOPROXY="" GONOSUMDB="" GOOS="linux" GOPATH="/home/vsts/go" GOPRIVATE="" GOPROXY="https://proxy.golang.org,direct" GOROOT="/opt/hostedtoolcache/go/1.15.6/x64" GOSUMDB="sum.golang.org" GOTMPDIR="" GOTOOLDIR="/opt/hostedtoolcache/go/1.15.6/x64/pkg/tool/linux_amd64" GCCGO="gccgo" AR="ar" CC="gcc" CXX="g++" CGO_ENABLED="1" GOMOD="" CGO_CFLAGS="-g -O2" CGO_CPPFLAGS="" CGO_CXXFLAGS="-g -O2" CGO_FFLAGS="-g -O2" CGO_LDFLAGS="-g -O2" PKG_CONFIG="pkg-config" GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build442356246=/tmp/go-build -gno-record-gcc-switches"
What did you do?
I try to cross-compile a Go-library for windows/arm and windows/arm64 to P/Invoke it from .Net. Although Go states to support “windows/arm” as a build target this is not true for buildmode=c-shared.
What did you expect to see?
windows/arm being supported.
What did you see instead?
“-buildmode c-shared not supported for windows/arm”
About this issue
- Original URL
- State: open
- Created 3 years ago
- Comments: 25 (7 by maintainers)
Commits related to this issue
- cmd/link: set SizeOfRawData rather than VirtualSize in COFF files for .bss section GCC and Clang both set the SizeOfRawData field rather than the VirtualSize field for communicating the size of the .... — committed to golang/go by zx2c4 3 years ago
- cmd/link: do not pass -Bsymbolic for PE DLLs This is only a valid option on ELF. Binutils accepts it, but LLVM rejects it, so for Windows, it's best to just omit it. Updates #44250. Updates #39326. ... — committed to golang/go by zx2c4 3 years ago
- cmd/link: set .ctors COFF section to writable and aligned Without setting these flags, LLVM's LLD ignores the .ctors section when merging objects. Updates #44250. Updates #39326. Updates #38755. Upd... — committed to golang/go by zx2c4 3 years ago
- runtime: fix sigtramp on windows arm64 platform Fixes: #43800 This fixes the sigtramp handler on Windows. Note that unlike linuxy platforms, sigtramp is not actually a "trampoline" function. Inste... — committed to marler8997/go by marler8997 2 years ago
- runtime: don't crash on nil g in sigtramp on windows arm64 platform This fixes the sigtramp handler on Windows. Note that unlike linuxy platforms, sigtramp is not actually a "trampoline" function. ... — committed to marler8997/go by marler8997 2 years ago
- runtime: run TestVectoredHandlerDontCrashOnLibrary on 386 and arm64 This CL updates TestVectoredHandlerDontCrashOnLibrary so it can run on windows/386 and windows/arm64. It still can't run on windows... — committed to golang/go by qmuntal a year ago
@rsc - do you intend to work on windows/arm cgo support for 1.18? If so, great. If not, could you let me know so I can potentially allocate resources to it?