-
Notifications
You must be signed in to change notification settings - Fork 17.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
cmd/link: support internal linking for Android and iOS #31819
Comments
Change https://golang.org/cl/207299 mentions this issue: |
The bootstrapping process (make.bash) on all other platforms use internal linking. This change brings android/arm64 in line, fixing the scary warning on our self-hosted Corellium builders: warning: unable to find runtime/cgo.a The linkmode default is changed to internal for all Android programs, but in practice that won't matter outside our builders: using Go with Android apps requires buildmode=c-shared which uses linkmode external. Fixes #31343 Updates #31819 Change-Id: I3b3ada5ed69a7989e6d8e5960bbebf5e1c22aada Reviewed-on: https://go-review.googlesource.com/c/go/+/207299 Run-TryBot: Elias Naur <mail@eliasnaur.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org> Reviewed-by: Cherry Zhang <cherryyz@google.com>
#31343 is marked as fixed. Is there anything else preventing the use of internal linking on Android? |
Yeah, currently we only support internal linking on Android/Arm64. We do support internal linking PIE on Linux/AMD64. I guess it would be too hard to make android/amd64 work as well. We don't currently support internal linking PIE on 386 or 32-bit ARM. That would need more work. Are 32-bit Android platforms still important to support? |
I would find it useful. We have Go binaries running on 32 bit ARM and x86 Emulators. |
We're about to run self-hosted Android and iOS builders (#31722). It would be nice if Go could produce internally linked binaries for those platforms, for a less hacky bootstrapping and for being able to build x/build/cmd/buildlet and stage0 everywhere. Depends on #31343 Android.
The text was updated successfully, but these errors were encountered: