]> Cypherpunks repositories - gostls13.git/commit
cmd/link: don't pass -Wl,--dynamic-linker if -static
authorIan Lance Taylor <iant@golang.org>
Wed, 28 Apr 2021 04:56:46 +0000 (21:56 -0700)
committerIan Lance Taylor <iant@golang.org>
Wed, 28 Apr 2021 15:52:58 +0000 (15:52 +0000)
commit24ea547a210b90eff7f4fefbd12dc8f72853406a
tree6b7329a27b0f342dc5bce30af1debbca8ad314a0
parent12af403624baa87700fe05db3e21c26e410871fd
cmd/link: don't pass -Wl,--dynamic-linker if -static

As with -rdynamic, clang will pass -Wl,--dynamic-linker to the linker
even when linking statically. When using lld this will produce a statically
linked executable with a dynamic interpreter, which will crash at runtime.
This CL changes the linker to drop -Wl,--dynamic-linker when using -static,
as it already does with -rdynamic.

This has become more important since CL 310349, which changes the linker
to always pass a -Wl,--dynamic-linker option if the Go linker is invoked
with a -I option.

Change-Id: I68ed431064f02c70018bc0547585e5b0ebd20a41
Reviewed-on: https://go-review.googlesource.com/c/go/+/314412
Trust: Ian Lance Taylor <iant@golang.org>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
src/cmd/link/internal/ld/lib.go