Re: [PATCH] ld.so.8: Correct linker option name
From: Fangrui Song <hidden>
Date: 2023-07-16 18:24:50
On Sat, Jul 15, 2023 at 5:46 PM Alejandro Colomar [off-list ref] wrote:
Hi, On 2023-07-15 20:19, Fangrui Song wrote:quoted
On Sat, Jul 15, 2023 at 9:42 AM Alejandro Colomar [off-list ref] wrote:quoted
Hi Fangrui, On 2023-07-14 09:00, Fangrui Song wrote:quoted
The linker option that sets the DF_1_NODEFLIB flag is -z nodefaultlib instead of -z nodeflib.Does -z nodeflib exist? Please mention that in your commit message. Thanks, AlexHi Alex, -z nodeflib is not defined. % ld.bfd -m elf_x86_64 -e 0 /dev/null -z nodeflib ld.bfd: warning: -z nodeflib ignored % ld.lld -m elf_x86_64 -e 0 /dev/null -z nodeflib ld.lld: warning: unknown -z value: nodeflib I have double checked that my commit message is accurate.I say it because it is a bit ambiguous, in the sense that it's not clear if nodeflib is a valid flag but which is not the one we're interested in, or if it's just an invalid flag. It's not a problem for those who know, but it reduces the work for those who don't know. Anyway, that was my guess, but I was only 90% certain without checking. I suggest appending this at the end of your commit message:-z nodeflib is not defined. % ld.bfd -m elf_x86_64 -e 0 /dev/null -z nodeflib ld.bfd: warning: -z nodeflib ignored % ld.lld -m elf_x86_64 -e 0 /dev/null -z nodeflib ld.lld: warning: unknown -z value: nodeflibWhat do you think? Thanks, Alex
Thank you for the suggestion! I agree that adding the commands clarifies things. Sent v2: https://lore.kernel.org/linux-man/20230716182227.2226356-1-maskray@google.com/T/#u (local)
quoted
quoted
quoted
Signed-off-by: Fangrui Song <redacted> --- man8/ld.so.8 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)diff --git a/man8/ld.so.8 b/man8/ld.so.8 index 1c9a13f56..351913bd8 100644 --- a/man8/ld.so.8 +++ b/man8/ld.so.8@@ -83,7 +83,7 @@ From the cache file which contains a compiled list of candidate shared objects previously found in the augmented library path. If, however, the binary was linked with the -.B \-z nodeflib +.B \-z nodefaultlib linker option, shared objects in the default paths are skipped. Shared objects installed in hardware capability directories (see below) are preferred to other shared objects.@@ -97,7 +97,7 @@ and then and then .IR /usr/lib64 .) If the binary was linked with the -.B \-z nodeflib +.B \-z nodefaultlib linker option, this step is skipped. .\" .SS Dynamic string tokens-- <http://www.alejandro-colomar.es/> GPG key fingerprint: A9348594CE31283A826FBDD8D57633D441E25BB5-- <http://www.alejandro-colomar.es/> GPG key fingerprint: A9348594CE31283A826FBDD8D57633D441E25BB5
-- 宋方睿