gnu ld searchpath
Vinitha Vijayan
vinitha.vijayann@gmail.com
Thu May 28 11:53:00 GMT 2015
More information about the Binutils mailing list
Thu May 28 11:53:00 GMT 2015
- Previous message (by thread): Relocations to use when eliding plts
- Next message (by thread): gnu ld searchpath
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Hi, Sorry if I am posting to a wrong mailing list. As per the gnu ld documentation, " The linker uses the following search paths to locate required shared libraries: 1. Any directories specified by -rpath-link options. 2. Any directories specified by -rpath options. The difference between -rpath and -rpath-link is that directories specified by -rpath options are included in the executable and used at runtime, whereas the -rpath-link option is only effective at link time. Searching -rpath in this way is only supported by native linkers and cross linkers which have been configured with the --with-sysroot option. 3. On an ELF system, for native linkers, if the -rpath and -rpath-link options were not used, search the contents of the environment variable LD_RUN_PATH. 4. On SunOS, if the -rpath option was not used, search any directories specified using -L options. 5. For a native linker, search the contents of the environment variable LD_LIBRARY_PATH. 6. For a native ELF linker, the directories in DT_RUNPATH or DT_RPATH of a shared library are searched for shared libraries needed by it. The DT_RPATH entries are ignored if DT_RUNPATH entries exist. 7. The default directories, normally /lib and /usr/lib. 8. For a native linker on an ELF system, if the file /etc/ld.so.conf exists, the list of directories found in that file. I have doubt regarding the last point i.e, "8. For a native linker on an ELF system, if the file /etc/ld.so.conf exists, the list of directories found in that file." Does this mean, if I have placed a local shared lib " libfoo.so" in a local path e.g, /usr/local/foo/lib and add this path in /etc/ld.so.conf or /etc/ld.so.conf.d/libfoo.conf, the following will work ? gcc main.c -lfoo The above doesn't seems to work in with a native linker in a native armhf environment, unless I pass -L/usr/local/foo/lib in the command line. Is this the expected behavior for gnu ld ? And ld.so.conf file entries only affect runtime linker (ld-linux*.so) searchpaths ? Regards, Vinitha Vijayan
- Previous message (by thread): Relocations to use when eliding plts
- Next message (by thread): gnu ld searchpath
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Binutils mailing list