Friday, 15 January 2010

linux - Why doesn't ld honor the '-rpath-link' option? -


I have to find out that the use of the string is:

  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 /../../../../4464-slackware-linux / bin / ld ", ..." -L / home / bjack / lib ", ... "-path -Leg", "-ligore", "-DLL", "-lig", "-liggers", "-liggers", "-liggers", "/ -jac / src / firmware / bj -bg / ab-bj-gameprom-module / src / display / logic "--rpath", "/ home / bjack / lib", "-lgcc", "-s-required", "-lgcc_s", " Not-required "," -lc "," -lgcc "," -s-required "," -l-gcc_s "," -no-necessarily "," /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 wars * /] = 0  

< Open ("/ home / bjack / lib / libygor.so", O_RDONLY) = -1Enont (such a File or directory) 8480 open ("/ home / pm / lib / LIBOROG.", O_ RDONLY) = -1 ENOENT (no such file or directory)

I am confused ; According to Manual LD, you should try to find the first -rpath-link path.

-rpath-link to affect shared logs only Depends on other shared libraries (only in the LD (1) man page) is documented. Since you are adding an executable link, either it has been ignored or its treatment is just like one or the other means that the -rpath-link path is used only for recursive dependencies, but You set it while executing an executable link.

Anyway, I think it is not being used because you do not have anybody's library depending on the other.


No comments:

Post a Comment