gpt4 book ai didi

linux - 为什么 ld 不支持 '-rpath-link' 选项?

转载 作者:太空狗 更新时间:2023-10-29 12:08:13 24 4
gpt4 key购买 nike

我使用 strace 检测到这一点:

8480  execve("/usr/lib/gcc-lib/i486-slackware-linux/3.3.4/../../../../i486-slackware-linux/bin/ld", 
[ "/usr/lib/gcc-lib/i486-slackware-linux/3.3.4/../../../../i486-slackware-linux/bin/ld",
...
"-L/home/bjack/lib",
...
"-rpath-link", "/root/src/firmware/Bj-bg/ab-BJ-gameprom-modules/src/dispatcher/logic",
...
"-lgame_std", "-lygor", "-ldl",
"--rpath", "/home/bjack/lib",
"-lgcc", "--as-needed", "-lgcc_s", "--no-as-needed", "-lc", "-lgcc", "--as-needed", "-lgcc_s", "--no-as-needed",
"/usr/lib/gcc-lib/i486-slackware-linux/3.3.4/crtend.o",
"/usr/lib/gcc-lib/i486-slackware-linux/3.3.4/../../../crtn.o"
], [/* 26 vars */]) = 0

8480  open("/home/bjack/lib/libgame_std.so", O_RDONLY) = 12
8480 open("/home/bjack/lib/libygor.so", O_RDONLY) = -1 ENOENT (No such file or directory)
8480 open("/home/bjack/lib/libygor.a", O_RDONLY) = -1 ENOENT (No such file or directory)

我很困惑;根据手册ld首先必须尝试在-rpath-link路径中找到。

最佳答案

-rpath-link 仅记录(在 ld(1) 手册页中)以影响依赖于其他共享库的共享库。由于您正在链接一个可执行文件,它要么被忽略,要么被当作另一个 -rpath。或者这可能意味着 -rpath-link 路径仅用于递归依赖,但您在链接可执行文件时确实设置了它。

无论如何,我认为它没有被使用,因为你没有一个依赖于另一个的库。

关于linux - 为什么 ld 不支持 '-rpath-link' 选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1825013/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com